2010-10-24 58 views

回答

1

是絕對的,但更多的 閱讀本http://www.ibm.com/developerworks/library/l-cppeak3.html轉到節「所有關於雞蛋」 從上述網站複製:

然而,這種在PYTHONPATH的操縱(或腳本中的sys.path的或Python shell會話)有點脆弱。發現蛋可能是最好的一些新的魔法.pth文件中處理。在site-packages /或PYTHONPATH中找到的任何.pth文件都會被解析,以便執行額外的導入操作,其方式與檢查可能包含軟件包的位置中的目錄的方式非常類似。如果您使用setuptools處理包管理,則在安裝,升級或刪除包等時會修改名爲easy-install.pth的文件。但是,無論您喜歡什麼,只要它們具有.pth擴展名即可調用.pth文件)。例如,這裏是我的易install.pth:

清單11. .pth文件雞蛋位置的配置

 
% cat /sw/lib/python2.4/site-packages/easy-install.pth 
import sys; sys.__plen = len(sys.path) 
setuptools-0.6b1-py2.4.egg 
SQLObject-0.7.0-py2.4.egg 
FormEncode-0.5.1-py2.4.egg 
Gnosis_Utils-1.2.1-py2.4.egg 
import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; 
    p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; 
    sys.__egginsert = p+len(new) 

格式是有點奇特:它幾乎是,但並不完全,一Python腳本。只要說你可以在那裏添加額外的列表蛋;或者更好,easy_install會在你運行時爲你做。您也可以在site-packages /下創建許多其他.pth文件,並且每個文件都可以簡單列出哪些可用的蛋。

+0

這個答案被忽略了,因爲它有點混亂,但是閱讀引用的實際文章是相當有用的,並且回答了我的問題。 – mindthief 2010-10-28 11:37:53

+0

我歡迎我的猜測:) – jknair 2010-10-28 12:07:33

+0

該鏈接現在看起來破碎了。你能更新它嗎? – 2014-03-24 19:37:08

1

是的,當你引用它們時,zip zip文件會被解壓縮,使它們比安裝時慢。

+0

你*可以*安裝雞蛋解壓縮,如果你也想。 '易於安裝 - 總是解壓縮。 – snapshoe 2010-10-24 21:30:31

+0

這是很好的知道! – mindthief 2010-10-28 11:36:07

0

@lamirap:不一定。

首先,從磁盤讀取需要一些時間,特別是如果模塊有多個文件。因此,如果我們比較從磁盤讀取多個文件而不解壓並讀取一個文件 - 這個文件較小,但後面跟着一些進一步的解壓縮開銷,後者不一定更慢。

二,理論上使用雞蛋有助於使系統路徑更短,請參閱http://mail.python.org/pipermail/python-dev/2006-April/064544.html

所以我關於性能的底線是 - 「這取決於」。請參閱:Disadvantage of Python eggs?