在python中打开文件时出错 让我们考虑下面的代码: fp=open('PR1.txt','r') ch=fp.readlines() print "%s" % (' '.join(ch)) print "\n" fp.close()

在python中打开文件时出错 让我们考虑下面的代码: fp=open('PR1.txt','r') ch=fp.readlines() print "%s" % (' '.join(ch)) print "\n" fp.close(),python,Python,上面的代码给出了一个错误: IOError: [Errno 2] No such file or directory: 'PR1.txt' 但当我提供其完整位置时,即 fp=open('D:/PR1.txt','r') 然后它就正常工作了 是否有必要提供文件的完整位置,或者还有其他方法?不,没有必要,但您需要确保使用正确的工作目录运行脚本。您的脚本工作目录显然不是D:// 实际上,如果您完全控制工作目录,最好只使用相对路径。您可以使用获取当前工作目录并将其设置为,但使用绝对路径通常更好 对于

上面的代码给出了一个错误:

IOError: [Errno 2] No such file or directory: 'PR1.txt'
但当我提供其完整位置时,即

fp=open('D:/PR1.txt','r')
然后它就正常工作了


是否有必要提供文件的完整位置,或者还有其他方法?

不,没有必要,但您需要确保使用正确的工作目录运行脚本。您的脚本工作目录显然不是
D://

实际上,如果您完全控制工作目录,最好只使用相对路径。您可以使用获取当前工作目录并将其设置为,但使用绝对路径通常更好

对于与当前模块或脚本相关的路径,请使用
\u文件\u
全局生成目录名:

import os.path

here = os.path.dirname(os.path.absolute(__file__))

然后使用
os.path.join()。还有,'os.path.abspath('./')将在许多方面扩展和帮助您:)该死,在我发表评论之前您已经编辑过了!