获取“IOError:[Errno 2]没有这样的文件或目录:'myoutfile.csv'”错误在Python中

时间:2011-10-05 02:49:31

标签: python file-io

我正在使用此行创建新文件(该文件不存在):

with open(outfilename, 'rwb') as outfile:

它出现了这个错误:

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

我正在尝试创建这个文件,我想如果我使用'w'会创建它,如果它不存在的话。如果是权限,如何创建新文件夹并参考其路径?

2 个答案:

答案 0 :(得分:4)

传递给open()函数的打开模式只接受特定的几个字母组合。在您的情况下,'rwb'不是这些组合之一,Python可能假设您的意思是'rb'。尝试:

with open(outfilename, 'wb') as outfile:

这将打开要写入的文件。如果您需要两者写入从同一句柄读取,请使用:

with open(outfilename, "w+b") as outfile:

答案 1 :(得分:1)

我很确定rwb不是open的有效模式。根据所需的行为,您可能需要选择r+bw+b中的一个。

使用rb是否要读取现有文件。

使用r+b是否要读取/写入现有文件。

使用wb是否要编写现有或不存在的文件(将首先截断现有文件)。

使用w+b是否要读取/写入现有或不存在的文件(将首先截断现有文件)。

如果您不想截断现有文件,请使用组合,例如(伪代码,显然):

open with "r+b"
on error:
    open with "w+b"