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

如何使用pandas以列表元素为表名在单个Excel文件中创建多个工作表

实现方法

你只需在循环调用to_excel方法时,将当前遍历到的number列表元素传入sheet_name参数即可实现需求。

核心修改点

把循环内to_excel调用处的sheet_name=''替换为sheet_name=n,每次循环取出的列表元素就会被设为对应工作表的名称。
如果使用pandas 1.4及以上版本,推荐用with上下文管理器创建Excel写入对象,会自动完成文件保存、资源释放,不需要手动调用save()方法,代码更稳妥。

修正后完整代码

import pandas as pd

number=['200','300','400','500']
df1 = pd.DataFrame({'Data': ['a', 'b', 'c', 'd']})

# 兼容所有pandas版本的写法
writer = pd.ExcelWriter('D:\\multiple.xlsx', engine='xlsxwriter')
for n in number:
    # 传入循环变量作为工作表名称
    df1.to_excel(writer, sheet_name=n)
writer.save()

# pandas 1.4+ 推荐写法(无需手动执行save)
# with pd.ExcelWriter('D:\\multiple.xlsx', engine='xlsxwriter') as writer:
#     for n in number:
#         df1.to_excel(writer, sheet_name=n)

注意:Excel工作表名称不支持\、/、?、*、[、]、:这类特殊字符,长度不能超过31位,你当前使用的number列表元素符合规则,可直接运行生成文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 20:51:32