gpt4 book ai didi

制作目录时出现 Python "FileExists"错误

转载 作者:IT老高 更新时间:2023-10-28 21:52:38 25 4
gpt4 key购买 nike

我有几个线程在集群系统上从 Python 并行运行。每个 python 线程都输出到一个目录 mydir。每个脚本,在输出之前检查 mydir 是否存在,如果不存在则创建它:

if not os.path.isdir(mydir):
os.makedirs(mydir)

但这会产生错误:

os.makedirs(self.log_dir)                                             
File "/usr/lib/python2.6/os.py", line 157, in makedirs
mkdir(name,mode)
OSError: [Errno 17] File exists

我怀疑这可能是由于竞争条件造成的,其中一个工作在另一个工作之前创建了 dir。这可能吗?如果是这样,如何避免这个错误?

我不确定这是一个竞争条件,所以想知道 Python 中的其他问题是否会导致这个奇怪的错误。

最佳答案

从 Python >=3.2 开始,os.makedirs() 可以采用第三个可选参数 exist_ok:

os.makedirs(mydir, exist_ok=True)

关于制作目录时出现 Python "FileExists"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12468022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com