python 遍历数组写法
时间: 2025-07-20 22:21:23 浏览: 4
<think>在Python中,遍历数组(通常使用列表list)有多种写法。下面我将介绍几种常见的遍历方式,并解释它们的用法和适用场景。</think>### Python遍历数组的写法
在Python中,"数组"通常指列表(`list`),也可用于元组、NumPy数组等可迭代对象。以下是7种常用遍历方法及示例:
#### 1. **直接遍历元素**
```python
arr = [1, 2, 3, 4]
for element in arr:
print(element) # 直接输出:1, 2, 3, 4
```
**解释**:最简洁的方式,直接获取元素值,无需处理索引。
#### 2. **通过索引遍历**
```python
arr = ["a", "b", "c"]
for i in range(len(arr)):
print(f"索引:{i}, 值:{arr[i]}") # 输出:索引:0, 值:a ...
```
**解释**:`range(len(arr))`生成索引序列,需通过`arr[i]`取值,适合需要索引的场景。
#### 3. **同时获取索引和值(`enumerate`)**
```python
arr = ["apple", "banana", "cherry"]
for index, value in enumerate(arr):
print(f"{index}:{value}") # 输出:0:apple, 1:banana, 2:cherry
```
**解释**:推荐做法!`enumerate`返回`(索引, 元素)`元组,可设置起始索引(如`enumerate(arr, start=1)`)。
#### 4. **列表推导式**
```python
arr = [1, 2, 3, 4]
squared = [x**2 for x in arr] # 生成新列表:[1, 4, 9, 16]
```
**解释**:高效创建新列表,避免显式循环。
#### 5. **使用`while`循环**
```python
arr = [10, 20, 30]
i = 0
while i < len(arr):
print(arr[i] * 2) # 输出:20, 40, 60
i += 1
```
**解释**:灵活性高,可自定义索引变化逻辑(如跳过某些元素)。
#### 6. **遍历多维数组**
```python
matrix = [[1, 2], [3, 4], [5, 6]]
for row in matrix:
for num in row:
print(num) # 逐行输出:1,2,3,4,5,6
```
**解释**:嵌套循环处理多维结构。
#### 7. **使用`zip`遍历多个数组**
```python
names = ["Alice", "Bob"]
scores = [85, 92]
for name, score in zip(names, scores):
print(f"{name}: {score}") # 输出:Alice: 85, Bob: 92
```
**解释**:并行遍历多个可迭代对象,长度不一致时以最短为准。
---
### 选择建议
- 只需元素值 → **直接遍历**或**列表推导式**
- 需要索引 → **`enumerate`**
- 需要索引控制逻辑 → **`while`循环**或**索引遍历**
- 多维数据 → **嵌套循环**
- 并行遍历 → **`zip`**
阅读全文
相关推荐


















