专栏名称: FlyAI
目录
相关文章推荐
51好读  ›  专栏  ›  FlyAI

简单粗暴,用python生成目录树

FlyAI  · 掘金  ·  · 2018-05-08 04:38

正文

简单粗暴,用python生成目录树

访问 flyai.club ,一键创建你的人工智能项目


在写一些文章时,尤其是一些技术文章或者教程,有时需要将目录结构附在文中,最简单粗暴的方法是自己手动写,但是效率太低,今天就来介绍一下高效率、美观的方法。

1、CMD生成目录树

在 windows 系统中,有一个 CMD 指令可以生成目录树,该条指令是 " tree " 。

1.1 查看帮助

使用 “ Win+R " 快捷键调出 运行 对话框,然后输入 ” CMD “ 回车打开命令行窗口。可以在窗口中输入 ” tree /? " 查看:

以图形显示驱动器或路径的文件夹结构。
TREE [drive:][path] [/F] [/A]
   /F   显示每个文件夹中文件的名称。
   /A   使用 ASCII 字符,而不使用扩展字符。

1.2 作用

从上述帮助文档中可以看出 tree 命令的作用是“以图形显示驱动器或路径的文件夹结构”。

1.3 命令格式

如果我们只想在命令行窗口查看 文件夹目录结构 ,可以使用如下格式:

tree E:\Programming\Python\DesignPattern

输出内容如下:

01_tree只打印文件夹结构

注意:如果路径中含有空格,则路径需要用双引号包起来,例如 tree "C:\Program Files"

上面的指令只能生成文件夹的目录结构,并没有显示文件,我们可以增加 /F 参数来显示文件夹和文件的目录结构:

tree /F E:\Programming\Python\DesignPattern

这样就ok了:

02_tree显示文件夹和文件结构

上述命令只是在控制台打印出来了,有时候会有保存到文件的需求,只需对上述命令稍作修改:

tree /F E:\Programming\Python\DesignPattern > dirtree.txt

命令执行之后,在命令行所在目录下会生成一个名为 “ dirtree.txt ” 的文件,目录结构已在其中。

2、Python生成目录树

上述 CMD 方式虽然可以生成目录树,但是并不美观,让我们用 Python 实现。

2.1 标准库pathlib介绍

Python有一个标准文件路径处理库 os.path ,从 Python3.4 开始,Python 又加入了一个标准库 pathlib ,该库是跨平台的、面向对象的路径操作库。

本例使用了 pathlib 中的 Path 类。本文用到的一些基本操作如下:

Path 类的引入:

from pathlib import Path

创建 Path 对象:

p = Path('E:\Programming\Python\DesignPattern')

获取 p 的路径名称:

print(p.name)

获取 p 目录下的所有文件:

pit = p.iterdir() # 返回一个迭代器,包含p下所有文件夹和文件

判断 p 是不是文件:

print






请到「今天看啥」查看全文