不知道有没有办法把字典变成目录结构。例如,具有以下键的字典:
dict['dir1']['subdir1']['subsubdir']['folder1']
['subdir2']['subsubdir']['folder1']['folder2']['folder3']
['subdir3']['subsubdir']
将导致三个目录(其中每个子目录对应于字典键名:
/dir1/subdir1/subsubdir/folder1/
/dir1/subdir2/subsubdir/folder1/folder2/folder3/
/dir1/subdir3/subsubdir/
请您参考如下方法:
from collections import defaultdict
import os
import os.path
def tree():
return defaultdict(tree)
d = tree()
d["dir1"]["subdir1"]["subsubdir"]["folder1"]
d["dir1"]["subdir2"]["subsubdir"]["folder1"]["folder2"]["folder3"]
d["dir1"]["subdir3"]["subsubdir"]
def rec(directory, current_path):
if len(directory):
for direc in directory:
rec(directory[direc], os.path.join(current_path, direc))
else:
os.makedirs(current_path)
rec(d, "")
输出
~/Desktop$ tree dir1
dir1
|-- subdir1
| `-- subsubdir
| `-- folder1
|-- subdir2
| `-- subsubdir
| `-- folder1
| `-- folder2
| `-- folder3
`-- subdir3
`-- subsubdir
10 directories, 0 files
