3 回答

TA貢獻1909條經驗 獲得超7個贊
來自Python Enterprise Application Kit社區:
“雞蛋對Python就像Jars對Java一樣……”
Python雞蛋是將附加信息與Python項目捆綁在一起的一種方式,它允許在運行時檢查和滿足項目的依賴關系,并允許項目為其他項目提供插件。有幾種包含雞蛋的二進制格式,但是最常見的是'.egg'zipfile格式,因為它是分發項目的便捷方式。所有格式都支持,包括特定于軟件包的數據,項目范圍的元數據,C擴展和Python代碼。
Python Eggs的主要好處是:
它們啟用諸如“輕松安裝” Python軟件包管理器之類的工具
.egg文件是Python軟件包的“零安裝”格式;無需構建或安裝步驟,只需將它們放在PYTHONPATH或sys.path上并使用它們即可(如果使用C擴展名或數據文件,則可能需要安裝運行時)
它們可以包含包元數據,例如它們依賴的其他雞蛋
它們允許將“命名空間包”(僅包含其他包的包)拆分為單獨的分布(例如zope。,twisted。,peak。*)包可以作為單獨的雞蛋分發,這與通常必須始終放在同一包下的普通包不同父目錄。這允許將現在龐大的整體軟件包作為單獨的組件分發。)
它們允許應用程序或庫指定所需的庫版本,以便您可以在導入twisted.internet之前例如require(“ Twisted-Internet> = 2.0”)。
對于將擴展或插件分發到可擴展的應用程序和框架,它們是一種很好的格式(例如Trac,它從0.9b1開始使用雞蛋作為插件),因為Egg運行時提供了簡單的API來查找雞蛋并找到它們的廣告入口點(類似Eclipse的“擴展點”概念)。
標準化格式還可能帶來其他好處,類似于Java的“ jar”格式的好處。
添加回答
舉報