2016-01-26 86 views
5

用於Python輪子的命名約定是什麼 Christoph Gohlke's Unofficial Windows Binaries for Python Extension PackagesChristoph Gohlke Python擴展包的非官方Windows二進制文件命名約定

例如,對於SciPy的這裏有兩個頁面上的車輪的名字:

SciPy的-0.17.0或更新-cp27-NONE-win32.whl

SciPy的-0.17.0或更新-cp27,無-win_amd64.whl

'none'表示什麼?

win32和win_amd64有什麼區別?

如果我使用的是x86或x86-64版本的Python(參考號Python 2.7.11),這有什麼關係嗎?

回答

5

其實這就是wheel工具的「命名約定」。真誠的我不確定「沒有」表示什麼,但是,是的,你的Python版本很重要。如果您使用的是32位解釋器,那麼繼續使用win32選項(當然是在Windows下)。否則,請下載適用於64位版本的win_amd64版本。

希望它有幫助!

+3

繼這個答案中的車輪鏈接後,我將其引導至[wheel文件命名約定](https://www.python.org/dev/peps/pep-0427/)。在這個頁面上查找**文件格式**部分和**文件命名約定**部分。 – user3731622

3

tl; dr:這是輪命名慣例,none意味着它是純python。

我採取了額外的步驟來遵循答案/評論。

這種情況下的none可能是ABI標籤。從PEP 425

的ABI標記表示的Python ABI需要由任何包括的 擴展模塊。對於實現特定的ABI, 實現的縮寫方式與Python標記相同,例如, cp33d將會是帶調試功能的CPython 3.3 ABI。

所以none在這種情況下是指包被公佈爲「純Python」(無的它的本地依賴性需要特定的應用程序二進制接口)。

這是假設所提供的車輪文件是使用the official wheel file name convention名稱:

車輪文件名是{分佈} - {版本}( - {建標籤}) - {蟒蛇標籤} - {ABI標籤} - {platform tag} .whl。

分佈

分配名稱,例如'django','金字塔'。

版本

分佈版本,例如1.0。

構建標籤

可選版本號。必須以數字開頭。如果兩個車輪具有相同的版本,則爲聯絡斷路器。如果未指定,則將其排序爲空字符串,否則將初始數字排序爲數字,其餘按字典順序排列。

語言實現和版本標記

例如'py27','py2','py3'。

ABI標籤

例如 'cp33m','abi3','無'。

平臺標籤

例如'linux_x86_64','任何'。