关于Python `for` 循环在Excel文件中的用法,结合搜索结果可总结为以下内容:
一、使用 `openpyxl` 库读取Excel单元格
加载工作簿与选择工作表 ```python
import openpyxl
workbook = openpyxl.load_workbook('example.xlsx')
sheet = workbook.active 或指定具体名称,如 workbook['Sheet1']
```
遍历单元格
通过嵌套 `for` 循环遍历行和列:
```python
rows = sheet.max_row
cols = sheet.max_column
for row in range(1, rows + 1):
for col in range(1, cols + 1):
cell_value = sheet.cell(row=row, column=col).value
print(f'单元格({row}, {col})的值为:{cell_value}')
```
关闭工作簿
```python
workbook.close()
```
二、使用 `openpyxl` 库写入数据到Excel
创建工作簿与工作表
```python
wb = openpyxl.Workbook()
sheet = wb.active
```
写入数据到单元格
通过嵌套 `for` 循环遍历列表:
```python
data = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for i in range(len(data)):
for j in range(len(data[i])):
sheet.cell(row=i+1, column=j+1, value=data[i][j])
```
保存工作簿
```python
wb.save('example.xlsx')
```
三、注意事项
索引从1开始: Excel行号和列标均从1开始计数,需注意循环起始值(如 `i+1`)。 若单元格包含特殊数据类型(如日期、公式),需使用 `cell.value` 获取原始值。 对于大数据量操作,建议使用 `with` 语句管理资源: ```python from openpyxl import load_workbook with load_workbook('example.xlsx') as wb: sheet = wb.active 进行操作 ``` 四、扩展应用 动态范围遍历数据类型转换:
性能优化:
```python
for row in range(1, rows + 1, 2):
处理偶数行
```
异常处理:添加 `try-except` 块处理文件读写错误。
通过以上方法,可灵活实现Excel文件的单元格读取与数据写入操作。