Python中给文件名添加日期时间报错问题求助
问题解决:写入Excel时文件名含日期时间报错
错误原因
你的报错是因为生成的文件名包含冒号(:),而Windows系统的文件名不允许使用:、\、/、*、?、"、<、>、|这类特殊字符,导致系统无法识别无效的文件路径。
修正方案
把日期时间格式里的冒号替换成系统允许的字符(比如横杠-或点.),修改后的代码如下:
from datetime import datetime import pandas as pd # 将时间部分的冒号替换为横杠 current_dt = datetime.utcnow().strftime("%d.%m.%Y-%H-%M-%S") filepath = r'testtable_%s.xlsx' % current_dt with pd.ExcelWriter(filepath) as f: df2.to_excel(f, sheet_name='SH-1', index=False) df.to_excel(f, sheet_name='SH-2', index=False)
说明
- 替换后的文件名示例:
testtable_11.08.2023-08-45-05.xlsx,符合Windows文件名规则 - 如果是Linux/macOS系统,冒号是允许的,但为了跨平台兼容性,建议统一使用无特殊字符的格式
内容的提问来源于stack exchange,提问作者user12
相关产品推荐
相关产品推荐

