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

pandas保存Excel文件时如何拼接取值与当前日期时间作为文件名

报错原因

原代码存在4个问题导致运行失败:

  • 缺少datetime模块的导入语句,调用时间方法时会触发名称错误
  • df.iloc[1]返回的是包含索引的Series对象,不是单元格里的纯字符串值
  • print()函数没有返回值(返回None),直接把print()写在to_excel()的路径参数位置,相当于传了个无效路径
  • 原始datetime对象转字符串时默认带:等Windows/macOS都不允许出现在文件名里的特殊字符,就算路径传对了也会保存失败
可直接运行的正确代码
import pandas as pd
import datetime

df = {'Apple' : ['iPhone', 'iPad', 'Mac']}
df = pd.DataFrame(df)

# 取第2行(索引为1)Apple列的取值,也就是"iPad"
name_part = df.loc[1, 'Apple']
# 格式化当前时间为文件名合法的格式:年月日_时分秒,不会出现特殊字符
time_part = datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
# 拼接成完整文件名
file_name = f"{name_part}_{time_part}.xlsx"

# 导出文件
df.to_excel(file_name, index=False)
补充说明
  • 取单元格值如果不想写列名,也可以用df.iloc[1, 0],第一个参数是行索引,第二个是列索引,直接返回标量字符串
  • 时间格式可以自行调整,只要不包含\ / : * ? " < > |这类文件名非法字符即可,比如要显示到毫秒可以写成"%Y%m%d_%H%M%S_%f"
  • 运行后会在脚本运行的当前目录生成类似iPad_20240520_162035.xlsx的Excel文件,符合预期命名格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 18:25:25