python列表解析式
时间: 2023-07-06 09:36:00 浏览: 64
Python中的列表解析式是一种简洁而强大的语法,可以方便地创建一个新的列表,其语法形式如下:
```python
[expression for item in iterable if condition]
```
其中,expression表示一个表达式,item表示一个变量名,iterable表示可迭代对象(如列表、元组、集合、字典等),condition表示一个可选的条件表达式。
具体来说,列表解析式的执行过程如下:
1. 遍历iterable中的每一个元素,将其赋值给变量item;
2. 对于满足条件condition的元素,求解表达式expression并将结果添加到新列表中;
3. 返回新列表。
下面是几个示例:
```python
# 生成一个1到10的平方的列表
squares = [x*x for x in range(1, 11)]
print(squares) # 输出 [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
# 生成一个1到10的偶数的列表
evens = [x for x in range(1, 11) if x % 2 == 0]
print(evens) # 输出 [2, 4, 6, 8, 10]
# 生成一个字符串列表,其中每个字符串是原列表中对应元素的首字母
words = ['apple', 'banana', 'cherry']
first_letters = [word[0] for word in words]
print(first_letters) # 输出 ['a', 'b', 'c']
```
需要注意的是,列表解析式可以嵌套,也可以使用多个for语句和多个if语句,以便处理更加复杂的数据结构。