关于python:python3.4:以”w”模式打开文件时仍会出现filenotfound错误

Python3.4: Opening file with mode 'w' still gives me FileNotFound error

本问题已经有最佳答案,请猛点这里访问。

我遇到了一个小问题:当在'w'模式下使用函数open()时,所有文档都表示如果该文件不存在,则会创建该文件。不幸的是,在我的例子中,由于某种原因,我得到了一个FileNotFound错误。

1
2
with open(newFileName, 'w') as newFile:
    #CODE

我收到以下错误:

1
FileNotFoundError: [Errno 2] No such file or directory: 'path of file I have specified'

你知道为什么会这样吗?事先谢谢!

编辑:对于那些询问目录是否存在的人,我对代码做了一些小的更改,这些更改可能会向您显示这确实是一条好路径。

1
2
3
4
5
6
7
8
9
if not os.path.exists("example"):
    os.makedirs("example")

BASE_DIR = os.path.dirname(os.path.abspath(__file__))

newFileName ="example/restOfPath"
newFileName = os.path.join(BASE_DIR,newFileName)

with open(newFileName, 'w') as newFile:

我仍然得到以下错误:

1
FileNotFoundError: [Errno 2] No such file or directory: 'correctPathToDirectory/example/restOfPath'

编辑2:忽略这个问题,问题解决了。在"example"之后正在创建第二个目录,因此它不工作。愚蠢的错误。


此错误的原因可能是包含新文件的目录尚不存在。

使用'w'open()只为您创建不存在的文件,而不是整个目录路径。因此,首先需要为文件创建目录。