我是python尝试使用以下命令在python中打开文件的新手:
phys = "C:\\parsework\\glckpysdata.txt"
print phys
d = open(phys)
当我跑步时,我得到:
C:\parsework\glckpysdata.txt
Traceback (most recent call last):
File "C:\py\boxtest2.py", line 28, in <module>
d = open(phys)
IOError: [Errno 2] No such file or directory: 'C:\\parsework\\glckpysdata.txt'
我觉得我已经尝试了所有东西(phys = r“C:\ parsework \ glckpysdata.txt”,用双引号和单引号/反斜杠等直接进入open命令......)似乎没有什么可以阻止它用双反斜杠读取路径。 关于这个最令人沮丧的事情我在同一个脚本中有完全相同的语法,它在那里工作得很好:
thisguy = "C:\\parsework\\glckout\\"
thisguy += nam
g = open(thisguy)
在同一个脚本中,工作正常。有人能告诉我发生了什么事吗?
答案 0 :(得分:7)
您的问题不是路径中的双反斜杠 - 这只是在错误消息中显示字符串表示的工件。实际的字符串不包含双反斜杠。
您的问题只是C:\parsework\glckpysdata.txt
不存在,正如错误消息所示。
顺便说一下,为了避免这种问题,只需在路径中使用正斜杠:
phys = "C:/parsework/glckpysdata.txt"
答案 1 :(得分:2)
以下任何一种情况都是正确的:
phys = "C:\\parsework\\glckpysdata.txt"
或
phys = r"C:\parsework\glckpysdata.txt"
该异常表示该文件不存在,或者您无权访问该文件。仔细检查路径和文件名(猜测,您是否遗漏了h
中的glckpysdata.txt
?)
异常消息中的双反斜杠就是嵌入式反斜杠的显示方式;每个\\
对应字符串中的单个反斜杠。