list,dict,set在编码中可以说无处不用,根据条件过滤list,dict,set中的数据是python学习的必备知识,看代码:
1 # coding=utf-8 2 from random import randint 3 4 # 随机生成一个-10到10之间的整数 5 randint(-10, 10); 6 ##随机生成一个有10个元素的list 7 l = [randint(-10, 10) for x in xrange(10)] 8 print(l) 9 10 #######问题:找出data中所有大于0的元素######## 11 ##方法一: filter函数 12 newl = filter(lambda x: x > 0, l) 13 print(newl) 14 ##方法二:列表解析 15 newl = [x for x in l if x > 0] 16 print(newl) 17 18 # 随机生成一个dict 19 d = {x: randint(60, 100) for x in xrange(1, 20)} 20 print d 21 22 ###问题:找出d中值大于90的元素### 23 24 ##方法一:字典解析## 25 newd = {k: v for k, v in d.iteritems() if v > 90} 26 27 print(newd) 28 29 # 生成一个集合(Set) 30 s = set(l) 31 32 ###问题:找出能被3整除的元素### 33 34 ##方法一:集合解析## 35 news = {x for x in s if x % 3 == 0} 36 print(news)