You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将指定根目录的层级结构转换为对应格式的嵌套字典

核心实现思路
  • 优先选择Python标准库pathlib做目录遍历,也可以用os模块的walk方法,前者的面向对象接口更易区分文件、目录,也更易处理路径层级。
  • 先定义每个目录节点的统一结构:每个目录对应一个字典,固定包含两个键:.dirs存储子目录映射(键为子目录名,值为子目录对应的节点字典),.files存储当前目录下的所有文件名列表。
  • 采用递归逻辑处理目录层级:
    1. 初始化根目录对应的节点,预先创建好.dirs空字典和.files空列表
    2. 遍历当前目录下的所有条目:
      • 若条目为文件,直接把文件名追加到当前节点的.files列表
      • 若条目为目录,先在当前节点的.dirs中创建该目录名对应的子节点(同样初始化.dirs和.files字段),再递归传入该子目录路径和子节点,处理下一层级的内容
  • 递归结束后,将根目录名作为键、根节点作为值,包裹成最外层的字典即为目标输出。
可补充学习的知识点
  • pathlib模块的is_file()、is_dir()、iterdir()方法的使用
  • 嵌套字典的递归写入技巧,注意每次创建子节点都要初始化统一结构,避免后续取值报错
  • 如有特殊过滤需求,可在遍历条目时增加判断逻辑,比如跳过隐藏文件、软链接等不符合要求的条目

内容的提问来源于stack exchange,提问作者SlavaCat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 14:57:02