python egg包類似jar,都是以zip為基礎的,.egg結尾 的文件,作為bundles for distributing code 。
一個 “python egg “ 是一個python項目的邏輯結構,由代碼、resources、metadata組成。
egg的關鍵原則是可發現(discoverable)、可調用(importable).即python應用(application)可以輕松高效的找到一個系統上有什么eggs,且確保需要的eggs內容可調用。
.egg格式非常適合發布且易於卸載或更新,因為這個項目只需包含在一個目錄或一個文件內,和其他項目或resource的代碼沒有混合。這樣他也可以確保一個項目可以有多個版本同時安裝,因此一個program 可以選擇他們需要的版本。
作為純python,.egg文件完全跨平台。
.egg文件的安裝:使用 easy_install *.egg ;
egg包卸載 :
vim $python_path/Lib/site-packages/easy-install.pth
刪除到egg包名所在行,
:wq
重啟python環境。
egg包制作:如對一個路徑如mymath創建egg包,這里面可能有很多python腳本。
1.
# setup.py from setuptools import setup, find_packages setup( name = "mymath", version = "0.1", packages = find_packages() )
2.然后
python setup.py bdist_egg
這時很產生很多的輸出,結束后,可以看到有三個文件目錄: build,dist,mymath.egg-info .我們關注的是dist目錄,這是帶有默認python版本的.egg文件所在路徑。
更詳細.egg制作參考:https://www.cnblogs.com/kungfupanda/p/3343113.html
setup.py 參考:http://python.jobbole.com/87240/