前言:
今天兄弟们对“生成列表 python”大致比较关心,大家都需要学习一些“生成列表 python”的相关文章。那么小编也在网上网罗了一些关于“生成列表 python””的相关文章,希望我们能喜欢,小伙伴们一起来了解一下吧!今天来介绍优雅Python系列之列表生成式。
列表生成式(list comprehension)是Python提供的一种语法糖,它可以优雅简单清晰的方式根据预期条件和顺序生成列表。
什么是列表生成式
众所周知,Python是一种面向对象的编程语言。对于Python来说,一切皆为对象。同时Python同样可以以函数式编程方式进行,就如同数学计算一样。当给定输入的情况下,一个函数的输出值应该也是一样的。
例如,给定:
f(x) = x^2
那么f(x) 将总是返回相同的值,如果给予相同的x值。
列表生成式(list comprehension)这是一种函数式编程方式。这种方式可以清晰明了的创造一个list,而不用写一个循环。
其中:
expr 为表达式value 为变量collections 为可迭代对象<cond> 为对应条件判断语句
例子
[ i**3 for i in [1,2,3,4] if i>2 ]
就意味着对于list( [1,2,3,4] ),将一个接一个的遍历list中的元素,然后判断该元素是否大于2,如果大于2,将计算其立方值,否则忽略它。会生成如下list
Output : [27, 64]类似语法
同样类似的语法还有如下:
set comprehensiondict comprehensiontuple comprehensionmap,filter,reduce + lambda
之后文章来逐一说明
标签: #生成列表 python