取代os.path的模块pathlib

pathlib模块是从python3.4版以后开始启用的,可以用来替代os.path.

django已经开始在settings.py中使用pathlib,所以我有必要学习一下新方法.

以下部分转载自python手册.

该模块提供表示文件系统路径的类,其语义适用于不同的操作系统。路径类被分为提供纯计算操作而没有 I/O 的 纯路径,以及从纯路径继承而来但提供 I/O 操作的 具体路径。

../_images/pathlib-inheritance.png

如果以前从未用过此模块,或不确定哪个类适合完成任务,那要用的可能就是 Path模块。它在运行代码的平台上实例化为具体路径。

在一些用例中纯路径很有用,例如:

  1. 如果你想要在 Unix 设备上操作 Windows 路径(或者相反)。你不应在 Unix 上实例化一个 WindowsPath,但是你可以实例化 PureWindowsPath

  2. 你只想操作路径但不想实际访问操作系统。在这种情况下,实例化一个纯路径是有用的,因为它们没有任何访问操作系统的操作。

知乎上也有一篇示例代码,写的也不错  https://zhuanlan.zhihu.com/p/87940289

posted @ 2021-03-28 22:02  歪理斜说  阅读(130)  评论(0编辑  收藏  举报