当Python与脚本位于同一目录时,它不会打开文本文件

时间:2014-03-17 04:31:07

标签: python

我正在尝试在python中打开一个文件。很简单。我使用的脚本与我的代码是同一个目录,所以我只使用

myfile = open('file.txt', 'r')

此前工作正常,但现在我收到错误'没有这样的文件或目录'(Errno2)

为什么会这样?我用OS检查我是否在正确的目录中,并且没问题。什么是python现在做的不同于它20分钟前,当它找到完美的文件??

2 个答案:

答案 0 :(得分:2)

假设您尝试打开/读取的文件具有适当的权限,则根据您调用python程序的方式来定义行为。我们假设您的代码和file.txt位于~/Desktop

如果您在~/Desktop并执行python code.py,您的代码将正常运行。但是,如果你在说你的主文件夹 - ~并执行python ~/Desktop/code.py,那么python解释器假定你当前的工作目录是~并将返回错误:

IOError: [Errno 2] No such file or directory: 'file.txt'

因为file.txt

中找不到~

此外,在给定示例的上下文中:

os.getcwd()

返回主目录的绝对路径和

os.path.realpath(__file__)

返回python源文件的绝对路径

答案 1 :(得分:0)

您是否可能输入错误的名称,例如" test.fna"与" test.fna.txt"?