.pth 文件如何区分带有路径信息的行和带有 Python 代码的行?

问题描述 投票:0回答:1

.pth 文件似乎还可以混合“添加到路径的文件夹”信息+还有一些Python代码,例如

import foo
pywin32.pth
中的示例:

# .pth file for the PyWin32 extensions
win32
win32\lib
Pythonwin
# And some hackery to deal with environments where the post_install script
# isn't run.
import pywin32_bootstrap

.pth 文件解析器如何区分文件夹行和 Python 代码行(导入...)? 这里似乎不明确。

注意:Python .pth 文件格式有官方规范吗? (我在https://docs.python.org/3/library/site.html上找到了一些信息,但不完整)

注2:似乎.pth文件还可以包含

zip
文件而不是文件夹,请参阅嵌入式Python中的
python38._pth

python38.zip
.

# Uncomment to run site.main() automatically
#import site
python path python-import pth
1个回答
0
投票

来自 https://github.com/python/cpython/blob/6abddd9f6afdddc09031989e0deb25e301ecf315/Lib/site.py#L29(重新格式化):

路径配置文件是名称格式为.pth的文件;其内容是附加目录(每行一个) 要添加到 sys.path 中。

不存在的目录(或 非目录)永远不会添加到 sys.path 中;没有添加目录 sys.path 不止一次。

空白行和以以下开头的行 '#' 被跳过。执行以“import”开头的行。

© www.soinside.com 2019 - 2024. All rights reserved.