1 ''' 2 如何在列表,字典,集合中根据条件筛选数据 3 ''' 4 from random import randint 5 import timeit 6 #随机生成10个(-10,10)之间的数字 7 data = [randint(-10,10) for _ in range(10)] 8 print(data) 9 #filter函数 输出>=0的数字 10 list1=filter(lambda x: x>=0,data) 11 print(list(list1)) 12 #列表解析 输出>=0的数字 13 list2 = [x for x in data if x>=0] 14 print(list2) 15 16 #随机生成字典 学生20人,学号1-20,成绩60-100之间 17 dict1={x:randint(60,100) for x in range(1,21)} 18 print(dict1) 19 #字典解析 输出大于75的学员 20 dict2 = {k:v for k,v in dict1.items() if v>75} 21 print(dict2) 22 23 #把data转换成set 24 set1=set(data) 25 print(set1) 26 #字典解析 输出被3整除的数字 27 set2={x for x in set1 if x%3 == 0} 28 print(set2)