Python列表推导式(List Comprehensions)是一种简洁、高效的创建列表的方法。它可以用一行代码生成一个新的列表,而不需要使用多行循环。列表推导式可以实现以下功能:
- 过滤列表元素:通过条件表达式对原始列表进行过滤,只保留满足条件的元素。
numbers = [1, 2, 3, 4, 5] even_numbers = [num for num in numbers if num % 2 == 0] # 保留偶数
- 生成序列:根据一定的规则生成一个新的列表。
squares = [num * num for num in range(1, 6)] # 生成1到5的平方数
- 嵌套循环:在列表推导式中使用嵌套循环,可以生成更复杂的列表结构。
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] flattened = [element for row in matrix for element in row] # 将二维矩阵展平为一维列表
- 字典推导式:通过指定键值对生成一个新的字典。
names = ['Alice', 'Bob', 'Charlie'] ages = [25, 30, 35] name_age_dict = {name: age for name, age in zip(names, ages)} # 将名字和年龄组合成字典
- 集合推导式:通过指定条件表达式生成一个新的集合。
numbers = [1, 2, 3, 4, 5] even_numbers = {num for num in numbers if num % 2 == 0} # 生成偶数集合
总之,Python列表推导式提供了一种简洁、高效的方式来创建和处理列表,同时支持多种数据结构。