Python 列表推导式是一种快速生成新列表的方法,可以避免使用循环语句和其他辅助变量,减少代码量,并且简洁明了。
列表推导式通常由两部分组成:
- 表达式:用来生成新的列表元素的表达式。
- 条件(可选):可以是一个或多个用来过滤列表元素的条件。
其基本语法格式如下:
new_list = [expression for item in old_list if condition]
其中,expression
表示用来生成新的列表元素的表达式,item
表示迭代的变量,old_list
表示原始的列表,而 condition
表示条件,用来过滤 old_list
中的元素,也是可选的。表达式 expression
和条件 condition
都可以是任何的 Python 表达式。
下面以一个简单例子来说明:
a = [1, 2, 3, 4, 5]
b = [i**2 for i in a if i > 2]
print(b)
输出结果为:
[9, 16, 25]
解释:原始列表 a
中有 5 个元素,列表推导式生成的新列表 b
只包含 a
中大于 2 的元素的平方值,即 [3**2, 4**2, 5**2]
。
列表推导式还可以嵌套,同时还可以使用多个 for 循环和多个 if 条件来进行更复杂的操作。需要注意的是,列表推导式不会修改原始列表,而是生成一个新列表。