列表推导式是Python基础,好用,而又非常重要的功能,也是最受欢迎的Python特性之一,可以说掌握它是成为合格Python程序员的基本标准。本质上可以把列表推导式理解成一种集合了变换和筛选功能的函数,通过这个函数把一个列表转换成另一个列表。注意是另一个新列表,原列表保持不变。
看示例:
对a中每个元素求立方
求a中偶数元素的立方 求a中大于5的偶数的元素的立方
多层for循环,将一个嵌套列表转化成一个一维列表
与zip函数结合使用
zip函数说明:
一、定义:
zip([iterable, ...])
zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)。
二、用法示例:
读者看看下面的例子,对zip()函数的基本用法就可以明白了:
1 2 3 4 5 6 7 8 9 | >>> a = [ 1 , 2 , 3 ] >>> b = [ 4 , 5 , 6 ] >>> c = [ 4 , 5 , 6 , 7 , 8 ] >>> zipped = zip (a,b) [( 1 , 4 ), ( 2 , 5 ), ( 3 , 6 )] >>> zip (a,c) [( 1 , 4 ), ( 2 , 5 ), ( 3 , 6 )] >>> zip ( * zipped) [( 1 , 2 , 3 ), ( 4 , 5 , 6 )] |