windows 为什么我会收到错误:“文件存在错误:[WinError 183]无法创建已存在的文件”?

mxg2im7a  于 2023-02-13  发布在  Windows
关注(0)|答案(5)|浏览(1314)

如果我的脚本创建了一个文件夹,为什么会出现错误?我在Windows 7上使用Python。错误:
文件存在错误:[WinError 183]当文件已存在时,无法创建该文件:[相关文件或文件夹的路径]
问题是文件和文件夹不存在。

fjnneemd

fjnneemd1#

我刚刚遇到了同样的问题。这个帖子帮助我解决了这个问题,但下面的澄清可能会帮助一些人:
对我来说,误解来自shutil.copytree(source, destination, symlinks, ignore)
我读到destination作为我复制的树将要去的地方。实际上,它创建了那个位置,然后把树复制到那里。所以如果你的目标目录已经存在,就像我的一样,你会得到这个错误。
希望这能帮上忙。

cetgtptt

cetgtptt2#

正如评论所指出的,该文件夹已经存在。你似乎认为试图创建一个已经存在的文件夹应该什么也不做。但这不是Windows的看法。
若要避免出现错误消息,请先检查文件夹是否存在。在创建文件夹的代码之前,执行

if not os.path.exists("name of folder"):
hpcdzsge

hpcdzsge3#

我刚刚遇到了一个稍微微妙的版本,这可能会帮助别人。
我正在创建一个文件夹:
os.makedirs(os.path.dirname(my_filename), exist_ok=True)
这将创建文件夹,但如果它已经存在,就不会出错。我会多次运行这个命令,没有任何问题。
再次运行,出现错误:

FileExistsError: [WinError 183] Cannot create a file when that file already exists: '\my\folder\path'

最后发现我保留了上一次运行的输出文件夹以供比较,将其重命名为其他文件夹。
这本不应该造成问题,但我仍然有一个文件夹中的文件在记事本打开。所以,由于仍然有一个活动的参考文件夹的操作系统抛出一个错误。
在记事本中关闭文件并重新运行,工作正常。

jhiyze9q

jhiyze9q4#

我有这个错误,当我试图创建路径树,然后复制文件there. the实际的问题是-没有一个文件夹已经存在。
相反,存在具有相同名称无扩展名文件。
因此python在这里无法区分文件和文件夹。

cpjpxq1n

cpjpxq1n5#

我在使用makedirs在路径中创建最后一个文件夹时遇到了类似的问题。我改用mkdir解决了我的问题。
最好的问候!

相关问题