## 一、列表推导式
---
作用:用一个表达式创建一个有规律的列表或者控制一个有规律的列表。
列表推导式又叫列表生成式。
### 1.1 快速体验
---
需求:创建一个0-10的列表。
- while循环实现
```python
# 1.准备一个空列表
list1 = []
# 2.书写循环,依次追加数字到空列表list1中
i = 0
while i < 10:
list1.append(i)
i += 1
print(list1)
```
- for 循环实现
```python
list1 = []
for i in range(10):
list1.append(i)
print(list1)
```
- 列表推导式实现
```python
list1 = [i for i in range(10)]
print(list1)
```
### 1.2 带if的列表推导式
---
需求:创建0-10的偶数列表
- 方法一:range()步长实现
```python
list1 = [i for i in range(0,10,2)]
print(list1)
```
- 方法二:if实现
```python
list1 = [i for i range(10) if i % 2 == 0]
print(list1)
```
```python
# 需求:0-10偶数数据的列表
# 1. 简单列表推导式 range步长
# list1 = [i for i in range(0,10,2)]
# print(list1)
# 2. for循环加if 创建有规律的列表
list2 = []
for i in range(10):
if i % 2 == 0:
list2.append(i)
print(list2)
# 3.把for循环配合给if的代码 改写 带if的列表推导式
# list2 = [i for i in range(10) if i % 2 == 0]
# print(list2)
```
### 1.3 多个for循环实现列表推导式
---
需求:创建列表如下:
```python
[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]
```
- 代码如下:
```
list1 = [(i,j) for i in range(1,3) for j in]
```
```python
list1 = []
for i in range(1,2):
for j in range(3):
list1.append((i,j))
print(list1)
```