Python列表推导式是一种简洁但有力的代码构造方式,可以让我们在一个语句中快速生成一个新的列表。下面是Python列表推导式的经典代码攻略:
基本语法
Python列表推导式的基本语法如下:
new_list = [expression for item in iterable if condition]
其中,expression
表示新列表中的元素表达式,item
表示从可迭代对象中取出的元素,iterable
表示可迭代对象,condition
表示判断条件(可选)。这个语法可以被理解为“对于每个 item
,用 expression
计算一个新元素,如果满足 condition
,则加入到新列表中。”
简单示例
我们来看一个简单例子。假设有一个列表 numbers
,我们想要生成一个新列表,其中每个元素都是原列表中的偶数,那么可以使用以下列表推导式:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers) # 输出 [2, 4, 6, 8, 10]
这个例子中,我们用 x
表示原列表中的元素,用 x % 2 == 0
判断 x
是否是偶数,再用 x
作为新列表的元素表达式。
多重循环示例
列表推导式也可以支持多重循环,生成一个二维列表。我们来看一个使用多重循环的例子。假设有两个列表 colors
和 sizes
,我们想要生成一个新列表,其中每个元素都是一个元组,分别表示颜色和尺寸:
colors = ['red', 'green', 'blue']
sizes = ['S', 'M', 'L']
items = [(color, size) for color in colors for size in sizes]
print(items) # 输出 [('red', 'S'), ('red', 'M'), ('red', 'L'), ('green', 'S'), ('green', 'M'), ('green', 'L'), ('blue', 'S'), ('blue', 'M'), ('blue', 'L')]
这个例子中,我们使用两个 for
循环,依次取出 colors
和 sizes
中的元素,将它们组成一个元组,作为新列表的元素。因为有两个循环,所以新列表中有 9 个元素。
以上就是Python列表推导式的完整攻略,通过这个语法,可以轻松而快速地生成新的列表。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python列表推导式 经典代码 - Python技术站