毛狗句子网—你身边的句子专家

毛狗句子网—你身边的句子专家

python

59

关于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

进行操作

```

四、扩展应用

动态范围遍历:结合 `range()` 函数实现步长遍历,例如每隔两行取数据:

```python

for row in range(1, rows + 1, 2):

处理偶数行

```

异常处理:添加 `try-except` 块处理文件读写错误。

通过以上方法,可灵活实现Excel文件的单元格读取与数据写入操作。