【发布时间】:2022-01-23 11:24:29
【问题描述】:
我正在创建一个 python 函数,它将“n”个参数作为列表,并根据它们的位置创建文件夹和嵌套文件夹 例如。
path = Path("Path to Directory")
root_folders = ['f1','f2','f3']
yr = ['2018', '2019']
mnth = ['JAN','FEB','MAR','APR','MAY','JUN','JUL','AUG','SEP','OCT','NOV','DEC']
“root_folders”应该是“路径”中的主文件夹 “yr”应该是每个“root_folders”的子文件夹 “mnth”是每个“yr”的子文件夹
我已经能够使用以下代码实现这一点:
def folder(root,*args):
for a in args[0]:
path = os.path.join(root, a)
if not os.path.exists(path):
os.mkdir(path)
for b in args[1] :
path2 = os.path.join(path, b)
if not os.path.exists(path2):
os.mkdir(path2)
for c in args[2] :
path3 = os.path.join(path2, c)
if not os.path.exists(path3):
os.mkdir(path3)
folder(path,root_folders,yr,mnth)
但这有一定的局限性,因为嵌套文件夹增加了可伸缩性会成为问题。那么是否有任何解决方案可以使用递归或任何其他方法来实现
【问题讨论】:
标签: python function loops recursion subdirectory