有时候需要仿照一个已存在的文件夹创造和它同样结构的空文件夹(子文件夹名相同)。
之前使用python的os.system()
来实现,先读取,再一层一层地创建。
今天发现python的os中提供了方便的makedir方法,可以用来递归的创建目录,即中间文件夹若不存在也会被创建。
Example:1
2
3
4
5import os
source_path='xxx'
subdir=os.listdir(source_path)
for d in subdir:
os.makedirs(os.path.join('ddd',d))
Update:
使用这种方法的时候,当想要创建的文件夹已经存在时会出现异常,调整代码如下:1
2
3import os
if not os.path.exists(directory):
os.makedirs(directory)