You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用openpyxl匹配字符串并为Excel对应单元格填充字典值

现有代码问题梳理

  • 变量名不统一:你已经把工作表赋值给ws变量,但循环里写的是sheet.max_row,会报未定义错误
  • 冗余操作:不需要遍历字典所有key判断,直接用in判断单元格内容是否在字典key里即可,效率更高
  • 缺少写入单元格和最终保存文件的逻辑
  • 你已经把单元格的值取出来赋值给cell变量了,后续不需要再写cell.value,会触发类型报错

修正后完整实现代码

from openpyxl import load_workbook

# 定义匹配字典
my_dict = {'data1':'A','data2':'B','data3':'C'}
wb = load_workbook('input.xlsx')
ws = wb['sheet1']

# 遍历行,range从2开始是跳过第一行表头,如果不需要跳过可改为1
for rownum in range(2, ws.max_row + 1):
    # 读取A列(第1列)当前行的值
    a_col_value = ws.cell(row=rownum, column=1).value
    # 判断值是否为字典的key
    if a_col_value in my_dict:
        # 向C列(第3列)同位置行写入字典对应的value
        ws.cell(row=rownum, column=3, value=my_dict[a_col_value])

# 保存修改后的文件,可自行修改输出路径,也可直接覆盖原文件
wb.save('output.xlsx')

内容的提问来源于stack exchange,提问作者user11874651

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 05:24:03