Python的列表推导式用法示例
Python的列表推导式是一种简洁而强大的语法,可以使用一行代码生成新的列表。它的语法格式如下:
[new_item for item in old_list if condition]
这种语法可以理解为:对于old_list中的每个元素item,如果满足条件condition,则将new_item添加到新列表中。
以下是一些使用列表推导式的示例:
1. 生成一个包含1至10的平方数的列表:
squares = [x**2 for x in range(1, 11)]
2. 生成一个包含1至10的偶数的列表:
even_numbers = [x for x in range(1, 11) if x % 2 == 0]
3. 将一个字符串中的每个字符转为大写字母并添加到列表中:
string = "Hello, World!"
uppercase_letters = [char.upper() for char in string]
4. 将一个列表中的每个整数元素乘以2:
numbers = [1, 2, 3, 4, 5]
doubled_numbers = [x * 2 for x in numbers]
5. 生成一个包含两个列表中对应元素相加的结果的新列表:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
sum_list = [x + y for x, y in zip(list1, list2)]
6. 使用条件语句生成一个只包含奇数的列表:
numbers = [1, 2, 3, 4, 5]
odd_numbers = [x for x in numbers if x % 2 == 1]
7. 生成一个包含指定字符串中长度大于等于5的单词的列表:
string = "This is a sample string"
words = string.split()
long_words = [word for word in words if len(word) >= 5]
8. 生成一个包含列表中大于等于5的元素的索引的列表:
numbers = [1, 6, 2, 7, 3, 8, 4, 9, 5]
indices = [index for index, value in enumerate(numbers) if value >= 5]
9. 生成一个包含2至10之间所有偶数的平方的列表:
squares = [x**2 for x in range(2, 11) if x % 2 == 0]
10. 生成一个包含两个列表中对应元素的乘积的新列表:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
product_list = [x * y for x, y in zip(list1, list2)]
以上是一些常见的使用列表推导式的示例,它们展示了列表推导式的灵活性和简洁性。通过列表推导式,我们可以以一种更加优雅的方式处理和操作列表数据。
