在python中获取当前目录并用转义字符和空格替换空格时

在python中获取当前目录并用转义字符和空格替换空格时,python,python-3.x,file-io,Python,Python 3.x,File Io,我正在编写一个python脚本,它将从sql server获取一些数据,然后以excel的形式写入当前目录。我用熊猫做的。为了获取当前目录,我使用了包os import os def getCurrDir(): return os.getcwd().replace(" ","\ ") 现在,在编写这样的excel工作表时调用此函数 writer = pandas.ExcelWriter(str(self.getCurrDir())+"/Temp_ID.xlsx", engine="xl

我正在编写一个python脚本,它将从sql server获取一些数据,然后以excel的形式写入当前目录。我用熊猫做的。为了获取当前目录,我使用了包os

import os

def getCurrDir():
   return os.getcwd().replace(" ","\ ")
现在,在编写这样的excel工作表时调用此函数

writer = pandas.ExcelWriter(str(self.getCurrDir())+"/Temp_ID.xlsx", engine="xlsxwriter")
temp.to_excel(writer,"Temp_ID_Data", index=False)
writer.save()
我不能写,因为错误是

FileNotFoundError: [Errno 2] No such file or directory: '/home/srinath/Documents/Copy/Affine/workspace\\ python/Swipe/Temp_ID.xlsx'
我们可以看到双斜杠即将出现。我认为双斜杠只是为了表示,我从中吸取了教训。那么到底发生了什么? 我使用的是来自continuum的Python3.4。
我使用的是64位centos 7。

在Python中不需要转义空格

getCurrDir()定义为

def getCurrDir():
   return os.getcwd()

在Python中用反斜杠转义空格时,Python会认为您的预期路径中有反斜杠,并尝试通过在反斜杠中添加另一个反斜杠来处理文件访问。因此,无效的
工作区\\python
文件访问尝试。

您不需要在python中转义空格

getCurrDir()定义为

def getCurrDir():
   return os.getcwd()
在Python中用反斜杠转义空格时,Python会认为您的预期路径中有反斜杠,并尝试通过在反斜杠中添加另一个反斜杠来处理文件访问。因此,无效的
workspace\\python
文件访问尝试。

您可以使用和
os.getcwd
创建正确的路径:

writer = pandas.ExcelWriter(os.path.join(os.getcwd(),"Temp_ID.xlsx"), engine="xlsxwriter")
您可以使用和
os.getcwd
创建正确的路径:

writer = pandas.ExcelWriter(os.path.join(os.getcwd(),"Temp_ID.xlsx"), engine="xlsxwriter")

谢谢你的回答。很有趣,谢谢你的回答。这很有趣。谢谢你的回答,这绝对是一个聪明的处理方式:)谢谢你的回答,这绝对是一个聪明的处理方式:)如果你正在读/写cwd,你不需要使用目录名,您只需要使用文件名,而不需要使用目录名。如果您正在读/写cwd,您只需要使用文件名