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

Pandas Series是否保留顺序?openpyxl写入Excel的一致性确认

Pandas与OpenPyXL写入Excel的顺序一致性问题解答

能否保证数据对应关系一致?

可以完全保证写入test.xlsx的内容和原DataFrame的行对应关系一致,john对应20、gibbs对应18、jane对应25的关联不会错乱。

你的代码从DataFrame中分别提取Name和Age列的Series,再按行顺序逐列写入Excel。由于这两个Series来自同一个DataFrame,它们的行顺序完全同步,遍历写入时每一行的位置会精准对应。

Pandas DataFrame/Series的顺序是否稳定?

你的推测完全正确:

  • Pandas 1.0及以后版本中,DataFrame和Series默认是有序容器,会严格保留数据的初始加载/插入顺序,只有主动执行修改顺序的操作(如sort_values()、reindex()、手动调整索引等)才会改变顺序。
  • 通过df.loc[:, '列名']提取的Series,会完整继承原DataFrame的行顺序,因此names和ages两个Series的行位置是一一对应的,不会出现错位。

额外优化建议(非必须)

如果担心后续操作意外修改索引顺序,可以修改写入函数,绑定索引和数据的对应关系,进一步确保准确性:

def write_by_col(ws, col, col_no):
    # 从第1行开始,遍历Series的索引和数据
    for row_num, (_, data) in enumerate(col.items(), start=1):
        ws.cell(row=row_num, column=col_no).value = data

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 08:04:55