gpt4 book ai didi

python - 防止 FileExistsError 的函数

转载 作者:行者123 更新时间:2023-12-01 08:22:21 24 4
gpt4 key购买 nike

我有这个函数来防止FileExistsError。它创建一个文件夹,但如果有另一个同名文件夹,它会在该文件夹的名称中添加一个序号。

import os

def create_folder(folder_name):

path = '/home/k/Desktop/' + folder_name
folder_number = 1

if os.path.exists(path):
while path == os.path.exists(path):
folder_number += 1
path = '/home/k/Desktop/' + folder_name + ' ({})'.format(folder_number)
os.makedirs(path)

else:
os.makedirs(path)

我能够创建该文件夹,如果我创建另一个同名的文件夹,我会将名称设置为 myfoldername(1),但如果再次创建它,则会引发 FileExistsError:

FileExistsError: [Errno 17] File exists: '/home/k/Desktop/test (1)'

我认为错误出现在 while 循环中,但我不知道如何修复它。

最佳答案

分配带有递增数字的新路径名应该在 while 循环内,以便可以更新 path,以及 while 的条件循环只需要返回 bool 值os.path.exists方法:

while os.path.exists(path):
folder_number += 1
path = '/home/k/Desktop/' + folder_name + ' ({})'.format(folder_number)

关于python - 防止 FileExistsError 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54543166/

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