列表
1 列表解析
from random import randint
li = [randint(-20,10) for _ in range(20)]
li
# [-15, -6, -1, 4, 10, 2, -1, 2, -8, -4, -11, -9, 5, -15, 10, -17, -4, -3, 4, -7]
# 使用列表解析
[i for i in li if i>=0]
# [9, 5, 0, 10, 8, 8, 3, 4, 10, 2]
2 filter函数
b = filter(lambda x:x>=0,li)
字典
from random import randint
d = {x:randint(60,100) for x in range(1,20)}
d
{1: 73,
2: 84,
3: 97,
4: 73,
5: 87,
6: 90,
7: 67,
8: 78,
9: 62,
10: 61,
11: 64,
12: 75,
13: 77,
14: 85,
15: 89,
16: 68,
17: 74,
18: 76,
19: 60}
# 使用字典解析
{x:v for x,v in d.items() if v >70}
集合的处理方式和列表解析基本一致