以下是“Python之列表推导式最全汇总(上篇)”的完整攻略。
基本语法
列表推导式的基本语法形式为:[expression for item in iterable],其中expression是一个表达式,item是可迭代对象中的元素,iterable是可迭代对象。以下是一个示例,演示如何使用列表推导式生成一个包含1到10的整数列表:
# 生成包含1到10的整数列表
my_list = [i for i in range(1, 11)]
print(my_list)
在上面的示例代码中,我们使用range()函数生成一个包含1到10的整数序列,后使用列表推导式将这个序列转换为一个包含1到10的整数列表,并使用print()函数打印结果。
筛选元素
我们可以使用if语句来筛选元素,只保留满足条件的元素。以下是一个示例,演示如何使用列表推导式筛选出一个列表中的偶数:
# 筛选出一个列表中的偶数
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_list = [i for i in my_list if i % 2 == 0]
print(even_list)
在上面的示例代码中,我们定义了一个包含1到10的整数列表my_list,然后使用列表推导式和if语句筛选出其中的偶数,并使用print()函数打印结果。
多维列表
我们可以使用多个for循环来生成多维列表。以下是一个示例,演示如何使用列表推导式生成一个包含所有坐标点的列表:
# 生成包含所有坐标点的列表
my_list = [(x, y) for x in range(3) for y in range(3)]
print(my_list)
在上面的示例代码中,我们使用两个for循环生成了一个包含所有坐标点的列表,并使用print()函数打印结果。
完整攻略
- 列表推导式的基本语法形为:[expression for item in iterable],其中expression是一个表式,item是可迭代对象中的元素,iterable是一个可迭代对象。
- 我们可以使用if语句来筛选元素,只保留满足条件的元素。
- 我们可以使用多个for循环来生成多维列表。
示例1:使用列表推导式生成一个包含1到10的整数列表
以下是一个示例,演示如何使用列表推导式生成一个包含1到10的整数列表:
# 生成包含1到10的整数列表
my_list = [i for i in range(1, 11)]
print(my_list)
在上面的示例代码中,我们使用range()函数生成一个包含1到10的整数序列,然后使用列表推导式将这个序列转换为一个包含1到10的整数列表,并使用print()函数打印结果。
示例2:使用列表推导式筛选出一个列表中的偶数
以下是一个示例演示如何使用列表推导式筛选出一个列表中的偶数:
# 筛选出一个列表中的偶数
my_list = [1, 2, 3, 4, 5, 6, , 8, 9, 10]
even_list = [i for i in my_list if i % 2 == 0]
print(even_list)
在上面的示例代码中,我们定义了一个包含1到10的整数列表my_list,然后使用列表推导式和if语句筛选出其中的偶数,并使用print()函数打印结果。