Windows下Pandas to_csv路径多余转义字符引发报错问题
问题解决:Windows下Pandas保存CSV路径报错
问题根源
你看到的\\只是Python字符串的转义显示,实际路径里是正常的单个反斜杠,真正的错误是文件名包含Windows系统不允许的特殊字符:。
Windows文件名禁止使用:、*、?等字符,而datetime.now()默认生成的字符串里包含时间部分的冒号(比如16:07:08),这才触发了Errno 22无效参数错误。Mac系统允许文件名含冒号,所以能正常运行。
修正代码
通过strftime方法将datetime格式化为不含冒号的合法字符串即可,示例如下:
import os from datetime import datetime current_working_directory = os.getcwd() path2 = 'Documents' # 格式化时间,用下划线替代冒号,按需保留秒级精度 current_datetime = datetime.now().strftime("%Y-%m-%d_%H-%M-%S") filename = f"python_df_{current_datetime}.csv" full_path = os.path.join(current_working_directory, path2, filename) df.to_csv(full_path, index=False)
如果需要保留微秒精度,可修改格式化规则:
current_datetime = datetime.now().strftime("%Y-%m-%d_%H-%M-%S-%f")
内容的提问来源于stack exchange,提问作者Seni
相关产品推荐
相关产品推荐

