Python中有一个特殊的语法叫做列表推导式,它会将一个代码块以特殊的格式写在一行代码里面,使用它需要遵守一定的规则。这篇文章回来详细的讲一下列表推导式该怎么用以及它有哪些规则。
一、列表推导式怎么用
列表推导式其实就是将表达式的结果放在前面,将表达式放在后面的一个特殊语句,示例如下:
list1 = [len(x) for x in ["abc", "hello", "world"]] 在上面这个例子之中,len(x)是for循环所产生的结果,拆解开来如下所示: list1 = [] for x in ["abc", "hello", "world"] list.append(x)
所以它其实就是将这个表达式结果和表达式换了一个位置,看起来就像是由结果去反推表达式一样。
二、列表推导式规则
1.如果是只需要获取一些特定的元素而不是迭代全部元素的话那么就可以使用if/else条件判断语句来实现,条件判断语句的表达式也要放在推导式的前面,示例如下:
custom_powers = [x*x if x % 2 == 0 else pow(x, 3) for x in integers]
2.尽量在使用列表推导式的时候用list去实现,虽然有许多的函数也可以去实现一些比较特殊的需求。但是列表推导式本质上是对可迭代对象进行简化的迭代,函数虽然好用但是可读性较差。
3.使用迭代的方式去创建列表,列表推导式本质来说就是迭代一个序列然后去创建一个列表。如果推导式不使用迭代的方式那它就没有任何实际上的意义了。
以上就是Python列表推导式的相关内容了,希望对你有所帮助。