将数据框写入指定path的excel文件
I have a dataframe df = pd.DataFrame({'Data': [10, 20, 30, 20, 15, 30, 45]}) This is working : writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter') df.to_excel(writer, sheet_name='Sheet1') writer.save() but when I try out_path = "C:\Users\Bala\output\temp-excel.xlsx" writer = pd.ExcelWriter(out_path , engine='xlsxwriter') df.to_excel(writer, sheet_name='Sheet1') writer.save()
我得到错误:IOError:[Errno 22] invalid mode('wb')or filename:'C:\ Users \ Bala Nadella \ output \ temp-excel.xlsx'。
如何在给定的path中创build文件。
string文字
研究该链接中的表格。 你需要用'\\'来逃避你的'\'。 部分地说,DOS负责这个世界的混乱。
out_path = "C:\\Users\\Bala\\output\\temp-excel.xlsx"
要么
out_path = r"C:\Users\Bala\output\temp-excel.xlsx" # the `r` prefix means raw string
但最好的select是这样的:
out_path = "C:/Users/Bala/output/temp-excel.xlsx"
它将在任何平台上工作。
使用os.path.abspath
编辑删除解决scheme。 在回答下面的评论之后,我自己阅读了文档,并意识到它有不同的目的。 尽pipe我过去使用它来使我的代码对操作系统友好,因为它将CWD整齐地附加到path上,并且在从Debian移动到Windows时改变/
\\
,反之亦然。
在一个string中,反斜杠是一个转义字符。 这意味着你正在给一个特殊的命令,而不是一个普通的字符。 例如。 "Hello\nWorld"
意思是在"Hello"
和"World"
之间加一个换行符。
如果你真的想使用反斜杠作为字符,请input"\\"
。
或者更好,只需使用正斜杠!