列表推导和字典推导
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
列表推导是很多Python程序员喜爱的特性之一,通过列表推导我们可以快速的建立自己想要的列表并进行简单的操作。
比如我们想把一个列表中的所有偶数找出来,传统的方法可能是:
numbers = [1, 2, 3, 4, 5, 6]
even = []
for number in numbers:
if number%2 == 0:
even.append(number)
但是再之后你可以这样做:
numbers = [1, 2, 3, 4, 5, 6]
even = [number for number in numbers if number % 2 == 0]
这其实相当于用列表推导实现了一个filter的功能,从一个原始的列表中过滤出我们想要的元素。
如果我们的需求是想对原始列表中的元素进行一些操作应该怎么办呢,比如说把原始列表中的元素每个都乘以2。
numbers = [1, 2, 3, 4, 5, 6]
mutiple = [number * 2 for number in numbers]
这实际上相当于对列表进行了一个map操作,即对列表中的每个元素进行一组操作,得到一个新的列表。
类似的操作我们也可以用到dict上面例如:
m = {x : x ** 2 for x in range(5)}
print m
学会了列表推导和字典推导后,是不是感觉世界清爽多了。
在线练习
{$ activeFileHint $}