所以我需要创建一个文件夹列表,每个文件夹都有多个非嵌套的子文件夹。我用过
os.makedirs('folder/subfolder')
创建一个文件夹和一个子文件夹,但我只能使多个嵌套文件夹工作:
os.makedirs('folder/subfolder1/subfolder2/subfolder3')
其中sub3嵌套在sub2中,它嵌套在sub1中。我想要的是将子1,2和3全部嵌套在'文件夹中。一起(1个文件夹内的3个文件夹)。我试过了
os.makedirs('folder/(subfolder1, subfolder2)')
但是只创建一个标题为"( subfolder1,subfolder2)"的文件夹。有谁知道这个的正确语法?是否可以使用makedirs功能?
答案 0 :(得分:9)
使用循环:
for i in range(1,100): os.makedirs(os.path.join('folder', 'subfolder' + str(i)))
或者,如果您的名字位于list
:
subfolder_names = [] for subfolder_name in subfolder_names: os.makedirs(os.path.join('folder', subfolder_name))
答案 1 :(得分:1)
您可以使用列表推导进行循环,使用os.makedir
在每次迭代时创建目录,并为其指定一个名称,该名称是将基本路径连接到给定目录名的结果。
import os
[os.makedir(os.path.join("/folder", "subdir{}".format(i))) for i in range(100)]
答案 2 :(得分:0)
你不能在这样的一次通话中这样做。只需打一个接一个电话:
os.makedirs("folder/subfolder1")
os.makedir("folder/subfolder2")