赞
踩
推导式(解析式):可以从一个数据序列构建另一个新的数据序列的结构体。
它的结构是在一个中括号中包含一个表达式,然后是一个for循环,然后是0个或多个for或者if语句。
比如:
multiples=[i for i in range(30) if i % 3 == 0]
print(multiples)
输出:
[0, 3, 6, 9, 12, 15, 18, 21, 24, 27]
再比如:
squared=[x**2 for x in range(10)]
print(squared)
输出:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
字典推导和列表推导类似。
比如:
mcase={'a':10,'b':20,'A':8,'c':9}
mcase_fre={k.lower():mcase.get(k.lower(),0)+mcase.get(k.upper(),0)for k in mcase.keys()}
print(mcase_fre)
输出:
{'a': 18, 'b': 20, 'c': 9}
print({v:k for k,v in mcase.items()})
输出:
{10: 'a', 20: 'b', 8: 'A', 9: 'c'}
他们跟列表推导式类似,唯一区别是大括号{ }
例如:
squared={x**2 for x in [1,1,2]}
ex={1,2,3}
print(squared)
print(ex.difference(squared))
print(ex.intersection(squared))
输出:
{1, 4}
{2, 3}
{1}
这里复习了一下集合的交际和并集。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。