python - 将数据帧写入给定路径的excel文件

原文 标签 python excel pandas

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]无效模式(“wb”)或文件名:“c:\users\bala nadella\output\temp excel.xlsx”。
如何在给定路径中创建文件。

最佳答案

String literals
研究那个链接中的表。你需要用'\'逃离'\'。在一定程度上,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

但最好的选择是:
out_path = "C:/Users/Bala/output/temp-excel.xlsx"

它可以在任何平台上工作。
编辑以删除带有os.path.abspath的解决方案。在这个答案下面的评论之后,我自己阅读了文档,意识到它有不同的用途。虽然我过去曾用它使我的代码对双操作系统友好,因为它巧妙地将cwd附加到路径上,并在从debian移动到windows时将/更改为\\,反之亦然。

相关文章:

python - 如何使用Django / Twilio回复短信

python - 重写python脚本以使用python3

excel - For Each循环的倒序

c++ - Excel OpenText方法

python-3.x - 使用matplotlib或seaborn绘制两列之间的关系

python - 在python中写入csv文件时如何跳过列

python - 如何调试theano张量的形状不匹配?

excel - VBA,电子邮件,ActiveX组件无法创建对象

python - 无法在python中读取stata .dta文件

python - 如何使用熊猫根据不重复天数删除记录?