繁体   English   中英

如果已经存在,则增加目录名称

[英]Increment directory name if it already exists

如果我有一个已经存在的目录,称为测试。 如果我尝试创建具有相同名称的目录,如何将目录名称增加 1?

您可以使用递归循环代码。

笔记:

  • 递归代码可能会导致错误(超过最大递归深度
  • 循环代码,运行良好,没有错误

代码 | 递归

import os

def generateDirectoryName(name, x=0):
    dir_name = (name + (' ' + str(x) if x is not 0 else '')).strip()
    if not os.path.exists(dir_name):
        os.mkdir(dir_name)
        return dir_name
    else:
        return generateDirectoryName(name, x + 1)

def createDirectory():
    user_input = input("Enter name to create directory: ")
    generateDirectoryName(user_input)

def main():
    cwd = os.getcwd()
    createDirectory()

main()

代码 | 环形

import os

def generateDirectoryName(name, x=0):
    while True:
        dir_name = (name + (' ' + str(x) if x is not 0 else '')).strip()
        if not os.path.exists(dir_name):
            os.mkdir(dir_name)
            return dir_name
        else:
            x = x + 1

def createDirectory():
    user_input = input("Enter name to create directory: ")
    generateDirectoryName(user_input)

def main():
    cwd = os.getcwd()
    createDirectory()

main()

输出

代码输出

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM