Python写入CSV文件时路径含整数文件夹报错求助
解决Python写入CSV时的"无效文件名"错误
你遇到的问题核心是Windows路径里的反斜杠被Python当成了转义字符。比如'\23'会被解析为八进制转义字符,而不是你实际想指向的文件夹"23",这就导致系统无法识别正确路径,触发"无效文件名"的报错。
下面是几种简单有效的修复方法:
方法1:使用原始字符串(最推荐)
在路径字符串前加r,让Python把反斜杠当作普通字符处理,不会触发转义:
import pandas as pd dis = ('a','b','c',100) my_df = pd.DataFrame(dis, columns=['内容']) # 给列加个名称,让导出的CSV更易读 my_df.to_csv(r'E:\23\4\plan_to_prod2.csv', index=False) # index=False避免写入默认索引列
方法2:用正斜杠代替反斜杠
Python支持在Windows系统中直接使用正斜杠作为路径分隔符,完全避开转义问题:
my_df.to_csv('E:/23/4/plan_to_prod2.csv', index=False)
方法3:用双反斜杠手动转义
把每个反斜杠换成两个,明确告诉Python这就是普通的路径分隔符:
my_df.to_csv('E:\\23\\4\\plan_to_prod2.csv', index=False)
额外提醒:如果E:\23\4这个文件夹还没创建,to_csv会提示路径不存在。这时候可以提前用代码生成文件夹:
import os folder_path = r'E:\23\4' os.makedirs(folder_path, exist_ok=True) # exist_ok=True避免文件夹已存在时报错 my_df.to_csv(os.path.join(folder_path, 'plan_to_prod2.csv'), index=False)
内容的提问来源于stack exchange,提问作者maniram reddy
相关产品推荐
相关产品推荐

