国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

在Python的setuptools框架下生成egg的教程

2020-02-23 00:40:49
字體:
來源:轉載
供稿:網友

本文介紹了 setuptools 框架的內容,它是 PEAK 的一個副項目,它提供了比 distutils 更加簡單的包管理和發行功能。
開始

setuptools 模塊很會 “規避”。例如,如果我們下載一個使用 setuptools 而不是使用 distutils 構建的包,那么安裝就應該可以像我們期望的一樣工作:通常使用 python setup.py install 就可以。為了實現這種功能,使用 setuptools 綁定在一起的包就會在歸檔文件中包含一個很小的引導模塊 ez_setup.py。此處惟一需要注意的是 ez_setup.py 試圖在后臺下載并安裝所需要的 setuptools —— 當然,這需要有一個連接網絡的機器。如果 setuptools 早已在本地機器上安裝了,那么這個后臺步驟就不再需要執行;但是如果它需要手工進行安裝,那么很多透明性就都丟失了。不過,大部分系統現在都有一個 Internet 連接了;為沒有連接網絡的機器多執行幾個特殊步驟也并非特別麻煩。

setuptools 的真正優點并不在于實現 distutils 所能實現的功能 —— 盡管它 的確 增強了 distutils 的功能并簡化了 setup.py 腳本中的內容。setuptools 最大的優勢是它在包管理能力方面的增強。它可以使用一種更加透明的方法來查找、下載并安裝依賴包;并可以在一個包的多個版本中自由進行切換,這些版本都安裝在同一個系統上;也可以聲明對某個包的特定版本的需求;還可以只使用一個簡單的命令就能更新到某個包的最新版本。給人印象最為深刻的是,即使有些包的開發人員可能還從未考慮過任何 setuptools 兼容性問題,我們依然可以使用這些包。

下面讓我們詳細探討一下。

引導

工具 ez_setup.py 是一個簡單的腳本,它可以引導 setuptools 中其余部分。有點讓人困惑的是,完整 setuptools 包中所提供的 easy_install 腳本與 ez_setup.py 所實現的功能是相同的。不過前者假設 setuptools 早已安裝了,因此它會跳過幕后的安裝過程。這兩個版本都可以接受相同的參數和開關。

這個過程中的第一個步驟是下載一個小腳本 ez_setup.py:
清單 1. 下載引導腳本

% wget -q http://peak.telecommunity.com/dist/ez_setup.py

然后,就可以不帶任何參數運行腳本來安裝 setuptools 中其余部分了(如果不作為一個單獨的步驟來執行這個步驟,在首次安裝其他包時,它還是會被完成)。會看到類似于下面的內容(當然,這要取決于所使用的版本):
清單 2. 引導 setuptools

% python ez_setup.pyDownloading http://cheeseshop.python.org/packages/2.4/s/ setuptools/setuptools-0.6b1-py2.4.egg#md5=b79a8a403e4502fbb85ee3f1941735cbProcessing setuptools-0.6b1-py2.4.eggcreating /sw/lib/python2.4/site-packages/setuptools-0.6b1-py2.4.eggExtracting setuptools-0.6b1-py2.4.egg to /sw/lib/python2.4/site-packagesRemoving setuptools 0.6a11 from easy-install.pth fileAdding setuptools 0.6b1 to easy-install.pth fileInstalling easy_install script to /sw/binInstalling easy_install-2.4 script to /sw/binInstalled /sw/lib/python2.4/site-packages/setuptools-0.6b1-py2.4.eggProcessing dependencies for setuptools            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石家庄市| 黄石市| 文成县| 靖边县| 贵南县| 密云县| 阳西县| 施甸县| 汪清县| 兴业县| 阿荣旗| 永新县| 广饶县| 夏邑县| 洪湖市| 深水埗区| 丰台区| 禹州市| 昭平县| 吴江市| 彭州市| 通化市| 富民县| 来安县| 青海省| 张家港市| 凤凰县| 呈贡县| 鹿邑县| 栖霞市| 读书| 宜昌市| 凉城县| 且末县| 巴里| 堆龙德庆县| 若尔盖县| 门头沟区| 凌源市| 洞头县| 满城县|