Python pathlib无法使用/

2024-05-17 00:40:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用库pathlib,并尝试按以下方式构建路径。在

BASE_DIR = Path(__file__).ancestor(3)
secrets_file = BASE_DIR / 'main_app' / 'settings' / 'secrets.json'

但是,运行此程序时,我收到以下错误:

^{pr2}$

我想我遵循了pathlibdocumentation中定义的语法(但我可能不是以一种模糊的方式)。在

>>> p = Path('/etc')
>>> q = p / 'init.d' / 'reboot'

我做错什么了?在


Tags: path路径程序jsonappbasesettingsmain
2条回答

为了可读性,我更喜欢使用Path.joinpath。在您的情况下,它将是:

BASE_DIR.joinpath('main_app','settings', 'secrets.json')

因此,您可以使用*运算符,对于长线,它将更加舒适。使用库提供的工具可以确保不会遇到这些错误,因为它们会为您处理细节。在

几乎可以肯定的是,您已经定义了一个名为Path(或从另一个模块导入的路径)的自定义类。在任何一种情况下,该路径都会盖过pathlib中的路径。要验证,请运行

print(Path.__module__)

找出Path来自哪个模块。在

相关问题 更多 >