真正的path.py在哪里?
有一个很不错的模块,叫做 path.py
,是由 Jason Orendorff 写的。如果我没记错的话,曾经讨论过要把它加入到标准库里,但后来这个话题就没了下文。
现在看来,原来的模块衍生出了多个版本。我目前找到的有 unipath,看起来像是一个 分支版本的 path.py,还有 另一个版本,根据 PyPI 的信息,还有其他一些。
有没有人对这些选项有经验?在功能、维护或其他方面,哪个更好呢?还是说我随便选一个就行?
(抱歉标题有点奇怪。我最开始想用“哪个 path.py?”但觉得太短了,不符合 Stack Overflow 的风格。)
2 个回答
所有喜欢 path.py 的朋友们请站起来!
从 Python 3.4 开始,有一个专门处理路径的模块,叫做 模块 pathlib
。这个模块是基于 PEP 428 的,受到了我们喜爱的 path.py 的很大启发。不过,它在处理路径时有些不同,特别是在区分 Windows 路径和 Unix 路径方面做得比较明确。
我一直很喜欢这个模块。这个模块似乎是最近更新最多的,而且也保持了原来的样子——这点我最喜欢,跟我试过的其他版本比起来。你可以通过 pip install path.py
来安装它。
补充说明:看起来从 Python 3.4 开始(并且在 PYPI 上也支持 2.7),有一个标准库的路径模块叫做 pathlib。虽然它的功能没有一些路径模块那么丰富,但它的优点在于简单明了,而且设计得很周到,保留了许多现有路径库的一些优秀特性。特别值得一提的是,它能够很好地处理不同操作系统之间的路径差异(比如 Windows 和 Posix),看起来是一个值得关注的干净工具。虽然它并没有包含所有可能需要的功能(确实没有),但 Python 终于有了一个不错的标准路径实现,这点真不错。