# 随机生成10个数区间(-10, 10)
from random import randint
data = [randint(-10, 10) for _ in xrange(10)]
1.操作列表
- 1.使用filter函数
"""
filter(过滤函数,列表)
lambda x: 匿名函数, 参数(依次迭代列表中的每一个参数)
返回Boolean值
x >= 0 : 为过滤条件
"""
filter(lambda
x
:
x >= 0,data)
- 2.使用列表解析(更快)
[x for x in data if x >= 0]
2.操作字典
"""
考试分数 60-100, 得到20个人的成绩 (1-20)
找高于90的
"""
d = {
x :
randint(60,100)
for x in xrange(1,21)}
print d
输出d:
{1: 91, 2: 62, 3: 76, 4: 68, 5: 85, 6: 100, 7: 82, 8: 89, 9: 92, 10: 93, 11: 61, 12: 89, 13: 68, 14: 98, 15: 86, 16: 82, 17: 66, 18: 75, 19: 89, 20: 73}
进行迭代:
{k: v
for k,v in d.iteritems()
if v > 90}
# 前面部分和字典一样 k: v
注:
{for x in d}: 这样只能迭代出键
{for x in d.iteritems()}: 值
3.操作集合
"""
# 集合类似字典解析
# 区别就是没有 :
"""
s = set(data)
{x for x in s if x - 3 > 0}