当我需要在脚本中定义文件系统路径时,我使用os.path.join
来保证路径在不同的文件系统上是一致的:
from os import path
path_1 = path.join("home", "test", "test.txt")
我也知道有一个Pathlib
库基本上也是这样做的:
from pathlib import Path
path_2 = Path("home") / "test" / "test.txt"
这两种处理路径的方法有什么区别?哪一个更好?
pathlib
是自Python 3.4以来更现代的方式。pathlib的文档说"对于字符串的低级路径操作,也可以使用os.path模块">
连接路径没有太大区别,但与os.path
相比,pathlib
的其他路径命令更方便。例如,要获得";茎";(文件名无扩展名(:
os.path:splitext(basename(path))[0]
路径库:path.stem
此外,您还可以使用相同类型的语法(逗号而不是斜杠(将路径与pathlib
连接起来:
path_2 = Path("home", "test", "test.txt")