如何解决打开文件时出现 IOError[errno 17] 文件已存在的问题?

4

我尝试使用以下内容打开一个文件进行写入:

fh = open("testfile", "w")

但是,我遇到了一个异常:

IOError: [Errno 17] 文件已存在!

我有写入权限,也没有竞争条件。有人知道我为什么会遇到这个错误吗?

谢谢。


4
这实际上是一个操作系统错误,所以你应该提及你的操作系统以及任何可能不寻常的事情。它是网络共享吗?可移动磁盘?等等。 - John La Rooy
1
相关问题:http://stackoverflow.com/questions/13317389/python-exception-errno-17-file-exists-using-open-on-windows - Rushy Panchal
1
如果您尝试以追加模式打开文件会发生什么? - Levon
1
它没有答案,因为它不是Python的问题。这是一个Windows独有的文件访问问题,而且没有可靠的解决方案。 - msw
2
@msw,如果unix / linux中现有的“文件”是目录或特殊文件,则可能会出现此错误。我猜您是说即使现有文件是常规文件,在Windows上也可能会看到它。您有更多信息的链接吗? - John La Rooy
显示剩余6条评论
1个回答

0

wx 模式是 Python 3.3 中的新功能之一,文档中指出如果文件已经存在则会引发错误。如果 w+ 模式正常工作,那么我认为问题中发布的代码与返回的错误不太一致...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接