1. 使用背景
一些情况下我们想要生成某个工程文件夹的文件目录,写在文档里面逐一说明每个文件的功能,这是如果能自动生成文件树就是一件很方便的事。
2. 代码
在如下代码中,只需要给定path目录就可以。
代码语言:javascript复制from pathlib import Path
tree_str = ''
def generate_tree(pathname, n=0):
global tree_str
if pathname.is_file():
tree_str = ' |' * n '-' * 4 pathname.name 'n'
elif pathname.is_dir():
tree_str = ' |' * n '-' * 4
str(pathname.relative_to(pathname.parent)) '\' 'n'
for cp in pathname.iterdir():
generate_tree(cp, n 1)
tree_str = ' |' * n 'n'
if __name__ == '__main__':
path = '.'
generate_tree(Path(path), 0)
print(tree_str)