リスト、辞書、コレクションで条件に基づいてデータをフィルタする方法

535 ワード

リスト、辞書、コレクションで条件に基づいてデータをフィルタする方法(1)リスト[3,9,−1,10,20,−2]の負の数をフィルタリングする.(2)辞書{‘lili’:70,‘tim’:88,‘maggie’:99}の90より大きい値をふるい出す.(3)集合{66,23,32,56}から3で除去できる元素をふるい出す.
ソリューション:(1)リストメソッド1:リスト解析[x for x in data ifx>=0]
from random import randint
l = [randint(-10, 10) for _ in range(10)]  #   -10 10   10   
print(l)
result = [x for x in l if x > 0]  #     
print(result)

方法2:filter関数filter(lambda x:x>0,data)
(2)辞書法:辞書解析{k:v for k,v in d.items()if v>90}
(3)集合方法:集合解析{x for x in s if x%3=}