我有一個python模塊打包distutils成一個壓縮的雞蛋安裝在自定義前綴。如果我將PYTHONPATH設置爲包含該前綴的site-packages目錄,則egg會添加到sys.path中,並且可以導入該模塊。但是,如果我在腳本中運行site.addsitedir並使用前綴的site-packages目錄,則egg不會添加到sys.path,並且導入模塊失敗。在這兩種情況下,模塊的site-packages目錄都以sys.path結尾。site.addsitedir不添加雞蛋到sys.path
這是預期的行爲?如果是這樣,有什麼辦法可以告訴Python在沒有設置env var的情況下處理給定目錄中的.pth文件嗎?
什麼是.pth文件?如果您手動將egg添加到sys.path,它會工作嗎?創建和使用雞蛋的Python版本是否相同? – jfs 2012-07-19 14:43:37
.pth文件:import sys; sys .__ plen = len(sys.path) ./webcharon-0.1-py2.7.egg import sys;新= sys.path中[SYS .__ PLEN:]; del sys.path [sys .__ plen:]; P = GETATTR(SYS, '__ egginsert',0); sys.path中[P:P] =新; sys .__ egginsert = p + len(新) – 2012-07-19 14:56:38
Python版本相同。事實上,相同的二進制。 – 2012-07-19 14:56:58