我正在寻找一个可以处理输入文件路径已包含括号中的数字后缀的情况的函数。我get_unique_path
函数的当前实现将数字后缀加一,直到找到不存在的路径。但是,当输入文件路径已包含数字后缀时,这种方法会失败。
例如,如果输入文件路径为example(1).txt
,则该函数将错误地附加另一组括号和一个数字,导致example(1)(2).txt
。相反,我希望该函数检查基本路径中是否存在括号,并相应地增加数字后缀。
这是我当前的实现:
def get_unique_path(file_path: str, extension: str) -> Optional[str]:
base_path = os.path.splitext(file_path)[0]
attempt = 1
while True:
path = f"{base_path}({attempt + 1}).{extension}"
if not os.path.exists(path):
return path
attempt += 1
我想修改此函数以处理输入文件路径已包含括号中的数字后缀的情况。有人能提出解决方案吗?