python的第一個主流打包格式是.egg文件,現(xiàn)在大家庭中又有了一個叫做Wheel(*.whl)的新成員。wheel“被設(shè)計(jì)成包含PEP376兼容安裝(一種非常接近于磁盤上的格式)的所有文件”。在本文中,我們將學(xué)習(xí)如何創(chuàng)建一個wheel以及如何在virtualenv中安裝wheel。
起步
你需要pip來創(chuàng)建wheel,要學(xué)習(xí)安裝pip,我強(qiáng)烈推薦閱讀pip的安裝頁面
。如果你已經(jīng)安裝了pip,那么你需要把它升級到最新版本。你只需要做這些:在一個控制臺窗口中,輸入以下命令:
pipinstall--upgradepip
完成以上工作后,我們就準(zhǔn)備學(xué)習(xí)創(chuàng)建wheel了!
創(chuàng)建wheel
首先,你需要安裝wheel包:
pipinstallwheel
下一步,我們將使用unidecode包來創(chuàng)建我們的第一個wheel,因?yàn)楫?dāng)我在寫本文的時候,我們的wheel包還沒有創(chuàng)建出來,接下來我會在多個項(xiàng)目中使用這個包。
pipwheel--wheel-dir=my_wheelsUnidecode
現(xiàn)在,你在my_wheels文件夾中有了名字為Unidecode-0.04.14-py26-none-any.whl的wheel,讓我們來學(xué)習(xí)安裝新創(chuàng)建的wheel!
安裝Python
wheel
讓我們創(chuàng)建一個virtualenv
來進(jìn)行測試,你可以在這里讀取更多關(guān)于virtualenv的信息。一旦你安裝了virtualenv,使用下面的命令來測試:
virtualenvtest
這將為我們創(chuàng)建一個包含pip的可試驗(yàn)虛擬沙箱,在繼續(xù)下一步之前,確信運(yùn)行了s文件夾中的activate來使能virtualenv。現(xiàn)在virtualenv沒有包括wheel,所以你需要再次安裝wheel:
pipinstallwheel
一旦wheel安裝,我們就使用如下命令來安裝我們之前創(chuàng)建的wheel:
pipinstall--use-wheel--no-index--find-links=path/to/my_wheelsUnidecode
為了測試運(yùn)行是否正常,從你virtualenv的s文件夾中運(yùn)行Python并且嘗試導(dǎo)入unidecode。如果它正常導(dǎo)入,那么你成功的安裝了你之前創(chuàng)建的wheel!
注解:我開始的時候安裝了一個麻煩多多的舊版本virtualenv。確信你升級到了最新版本,或者你花費(fèi)大量時間去折騰讓它正常工作。
*.whl文件有一點(diǎn)與*.egg文件相似:實(shí)際上它們都是“偽裝的”*.zip文件。如果你將*.whl文件名擴(kuò)展改為*.zip,你就可以使用你的zip應(yīng)用程序打開它,并且可以查看它包含的文件和文件夾。
總結(jié)
現(xiàn)在你已經(jīng)準(zhǔn)備好創(chuàng)建你自己的wheel了,那就像為你自己的快速安裝項(xiàng)目創(chuàng)建本地倉庫的一個很好地方法。你可以創(chuàng)建多個不同的wheel倉庫,這便與在不同測試版本之間切換。當(dāng)與virtualenv結(jié)合后,你就會有一個很便捷的方法,通過該方法,你看到新版本的依賴如何在不需要多次下載它們的情況下作用于你的項(xiàng)目。
以上內(nèi)容為大家介紹了python培訓(xùn)之wheel是什么,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。