Python列表推导式(List Comprehension)是一种简洁、高效的创建列表的方法。它允许你使用一行代码生成一个新的列表,而不需要使用循环或其他复杂的方法。列表推导式的基本语法如下:
[expression for item in iterable if condition]
其中,expression
是对 item
的操作,iterable
是一个可迭代对象(如列表、元组、集合等),condition
是一个可选的条件表达式。
以下是一些使用列表推导式的示例,以简化逻辑:
- 生成一个 0 到 9 的平方的列表:
squares = [x**2 for x in range(10)] print(squares) # 输出:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
- 从一个字符串列表中提取长度大于 3 的字符串:
words = ["apple", "banana", "cherry", "date", "fig", "grape"] long_words = [word for word in words if len(word) > 3] print(long_words) # 输出:['banana', 'cherry', 'grape']
- 将两个列表的元素组合成元组列表:
list1 = [1, 2, 3] list2 = ['a', 'b', 'c'] combined = [(x, y) for x in list1 for y in list2] print(combined) # 输出:[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]
通过使用列表推导式,你可以更简洁地表达你的意图,同时提高代码的可读性。