如何用 Python 代码自动生成项目目录结构图。

在了解一个项目初始的时候,我们经常会看到类似如下的项目目录图。

项目较小时,这种图尚可自己手动敲一下。

但当项目很大时,手动操作不太现实,一来工作量大,二来容易弄错。

那有没有一种用代码实现的方式来,自动生成目录对应的项目目录图呢?

当然有,本文就将给出通用的python代码。

# generate_structure.py

import
os def generate_project_structure(path, indent=0): """递归生成目录结构图""" if not os.path.exists(path): print(f"路径 '{path}' 不存在") return items = os.listdir(path) items.sort() for item in items: full_path = os.path.join(path, item) if os.path.isdir(full_path): print("" * indent + f"├── {item}/") generate_project_structure(full_path, indent + 1) else: print("" * indent + f"├── {item}") def main(): project_path = "./simple_project" # 替换为你的项目路径 print(f"{os.path.basename(project_path)}/") generate_project_structure(project_path) if __name__ == "__main__": main()

代码比较简单,仅用到了一个递归,逐层往下钻。

使用方法

  1. 将代码保存为 generate_structure.py
  2. project_path 替换为你的实际项目路径。
  3. 在终端运行以下命令:
python generate_structure.py

输出示例

假设项目结构如下:

simple_project/
├── app/
│   ├── main.py
│   ├── templates/
│   │   ├── index.html
│   ├── database.py
├── requirements.txt
├── Dockerfile

运行后输出:

simple_project/
├── app/
│   ├── main.py
│   ├── templates/
│   │   ├── index.html
│   ├── database.py
├── requirements.txt
├── Dockerfile

本文抛砖引玉、后面还可以尝试拓展,各位网友有兴趣可以自行尝试。

可扩展功能

  1. 文件注释:如果需要包含文件注释,可以定义一个字典映射文件名到注释。
  2. 忽略文件或文件夹:在 items 中过滤掉需要忽略的内容。
  3. 导出为文件:可以将输出重定向到文本文件,方便保存。

 

posted @ 2024-12-18 15:46  AlphaGeek  阅读(974)  评论(0)    收藏  举报