Skip to main content
 首页 » 编程设计

Python:根据字典键名创建文件目录

2025年05月04日11lovecherry

不知道有没有办法把字典变成目录结构。例如,具有以下键的字典:

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