openpyxl读取excel后,更改列的keys
时间: 2023-11-18 17:10:42 浏览: 73
在 openpyxl 中,通过访问单元格的行和列索引来读取和写入单元格数据。要更改列的键,您可以使用以下步骤:
1. 读取 Excel 文件并打开要编辑的工作表。
```
from openpyxl import load_workbook
# 打开 Excel 文件
workbook = load_workbook(filename='example.xlsx')
# 获取要编辑的工作表
worksheet = workbook['Sheet1']
```
2. 读取列数据并将其存储在一个字典中,其中键是原始键,值是列数据。
```
data = {}
# 读取列数据
for row in worksheet.iter_rows(min_row=2, values_only=True):
key = row[0]
value = row[1]
data[key] = value
```
3. 更改键并将更改后的数据写回 Excel 文件。
```
# 更改键
new_keys = ['new_key1', 'new_key2']
new_data = {}
for i, key in enumerate(data.keys()):
new_key = new_keys[i]
new_data[new_key] = data[key]
# 写回 Excel 文件
worksheet.delete_cols(1)
for i, key in enumerate(new_data.keys()):
worksheet.cell(row=i+2, column=1, value=key)
worksheet.cell(row=i+2, column=2, value=new_data[key])
# 保存 Excel 文件
workbook.save(filename='example.xlsx')
```
在上面的示例中,我们首先使用 `iter_rows` 方法读取列数据,并将其存储在字典中。然后,我们使用 `enumerate` 函数和 `new_keys` 列表生成新的键,并将更改后的数据存储在 `new_data` 字典中。最后,我们删除原始列并使用 `cell` 方法将新的键和值写入工作表中,并保存 Excel 文件。
阅读全文