有时,当我安装包时,我会注意到在 site-packages 目录中创建了一个 .pth 文件,该文件与包代码处于同一级别。例如,如果我做一个
pip install DjangoDevKit
我可以在 site-packages 目录中看到:
djangodevkit (a directory)
DjangoDevKit-1.0.7.dist-info (a directory)
DjangoDevKit-1.0.7-py3.5-nspkg.pth
.pth 文件包含:
import sys, types, os;p = os.path.join(sys._getframe(1).f_locals['sitedir'], *('djangodevkit',));ie = os.path.exists(os.path.join(p,'__init__.py'));m = not ie and sys.modules.setdefault('djangodevkit', types.ModuleType('djangodevkit'));mp = (m or []) and m.__dict__.setdefault('__path__',[]);(p not in mp) and mp.append(p)
这DjangoDevKit-1.0.7-py3.5-nspkg.pth是如何创建的?setup.py 不会告诉创建这样的 .pth 文件。我搜索了代码,但没有什么明显的。
你有什么想法吗?
相关分类