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

如何使用Pandas的iterrows方法写入Excel指定单元格?

用Pandas的iterrows实现单元格写入的正确方法

你之前的代码无法生效的核心原因是:iterrows()返回的行对象(row[1])是原DataFrame行数据的副本,修改副本不会同步到原DataFrame中,自然也无法最终写入Excel。

下面是正确的实现方式,通过行索引定位原DataFrame的单元格进行修改:

import pandas as pd

# 读取Excel数据
raw_data = pd.read_excel(filepath, sheet_name="Feuil2")

# 遍历行,同时获取行索引和行数据
for idx, row in raw_data.iterrows():
    print(row['name'])
    # 通过原DataFrame的loc方法,用索引定位指定单元格修改
    raw_data.loc[idx, 'name'] = "Cassandra"

# 必须将修改后的DataFrame写回Excel文件,否则仅在内存中生效
raw_data.to_excel(filepath, sheet_name="Feuil2", index=False)

关键注意点:

  • 一定要调用to_excel()方法将修改后的DataFrame保存回文件,否则所有修改只停留在内存中,不会改变原Excel。
  • 如果是要整列统一修改,直接用raw_data['name'] = "Cassandra"会比iterrows()效率高得多;只有需要逐行判断条件修改时,才适合用iterrows()遍历。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 19:31:09