01-字典列表集合中筛选
![]()
# 如何在列表字典集合中根据条件帅选数据
from random import randint
# 第一种
# data = [-1,2,3,-4,5]
# res = []
# for x in data:
# if x > 0:
# res.append(x)
# print(res)
# a = randint(-10,10)
# print(a)
b = [randint(-10,10) for _ in range(10)]
# print(b)
# 第二种
# 列表解析
b2 = [x for x in b if x >= 0]
# print(b2)
# 第三种filter函数
# 返回一个生成器对象 next可以取出元素
b3 = filter(lambda x:x>=0,b)
# print(next(b3))
# print(list(b3))
# 第四种 字典
d = {'student%d' % i : randint(50,100) for i in range(1,21) }
# print(d)
# 获取分数高于90的学生
d1 = {k:v for k,v in d.items() if v >=90}
# print(d1)
g = filter(lambda item:item[1],d.items())
# print(list(g))
g = filter(lambda item:item[1],d.items())
# print(dict(g))
# 第五种集合
s = {randint(0,20) for _ in range(20)}
print(s)
s1 = {x for x in s if x %3 == 0}
print(s1)
View Code