日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

安装python有什么用_什么是Python Wheels?为什么要关心它?,python有什么用

發(fā)布時(shí)間:2025/3/20 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安装python有什么用_什么是Python Wheels?为什么要关心它?,python有什么用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

什么是Python Wheels?為什么要關(guān)心它?,python有什么用

前言

Python .whl文件(或wheels)是Python中很少討論的一部分,但是它們對(duì)Python包的安裝過程非常重要。如果您已經(jīng)使用pip安裝了Python包,那么很有可能是輪子(wheels)使安裝速度更快、效率更高了。

輪子是Python生態(tài)系統(tǒng)的一個(gè)組件,它有助于使包的安裝工作正常進(jìn)行。它們?cè)试S更快的安裝和更穩(wěn)定的包分發(fā)過程。在本教程中,您將深入了解輪子是什么,它們提供了什么好處,以及它們是如何獲得吸引力并使使用Python變得更方便的。

輪子簡(jiǎn)介

在學(xué)習(xí)如何將項(xiàng)目打包到輪子中之前,從用戶的角度了解使用輪子是什么樣子是很有幫助的。

可以像往常一樣在環(huán)境中安裝一個(gè)Python包來開始這個(gè)實(shí)驗(yàn)。在這種情況下,安裝uWSGI 2.0.x版本:

$?python?-m?pip?install?'uwsgi==2.0.*'

2?Collecting?uwsgi==2.0.*

3???Downloading?uwsgi-2.0.18.tar.gz?(801?kB)

4??????|████████████████████████████████|?801?kB?1.1?MB/s

5?Building?wheels?for?collected?packages:?uwsgi

6???Building?wheel?for?uwsgi?(setup.py)?...?done

7???Created?wheel?for?uwsgi?...?uWSGI-2.0.18-cp38-cp38-macosx_10_15_x86_64.whl

8???Stored?in?directory:?/private/var/folders/jc/8_hqsz0x1tdbp05?...

9?Successfully?built?uwsgi

10?Installing?collected?packages:?uwsgi

11?Successfully?installed?uwsgi-2.0.18

要完全安裝uWSGI, pip需要經(jīng)過幾個(gè)不同的步驟:

在第3行,它下載一個(gè)名為uwsgi-2.0.18.tar.gz的TAR文件(tarball),該文件是用gzip壓縮的。

在第6行,它接受tarball并通過調(diào)用setup.py構(gòu)建一個(gè).whl文件。

在第7行,它將輪子標(biāo)記為uWSGI-2.0.18-cp38-cp38-macosx_10_15_x86_64.whl。

在第10行,它在構(gòu)建了輪子之后安裝實(shí)際的包。

pip檢索的tar.gz tarball是一個(gè)源分發(fā)包,或sdist,而不是一個(gè)輪子。在某些方面,sdist是輪子的反義詞。

源代碼發(fā)行版包含源代碼。這不僅包括Python代碼,還包括與包綁定的任何擴(kuò)展模塊的源代碼(通常用C或c++編寫)。對(duì)于源發(fā)行版,擴(kuò)展模塊是在用戶端而不是開發(fā)人員端編譯的。

源分發(fā)版還包含一個(gè)元數(shù)據(jù)包,位于名為.egg-info的目錄中。該元數(shù)據(jù)有助于構(gòu)建和安裝包,但用戶實(shí)際上并不需要使用它做任何事情。

從開發(fā)人員的角度來看,當(dāng)您運(yùn)行以下命令時(shí),會(huì)創(chuàng)建一個(gè)源分發(fā)包:

$?python?setup.py?sdist

現(xiàn)在嘗試安裝一個(gè)不同的包:chardet:

$?python?-m?pip?install?'chardet==3.*'

2?Collecting?chardet

3???Downloading?chardet-3.0.4-py2.py3-none-any.whl?(133?kB)

4??????|████████████████████████████████|?133?kB?1.5?MB/s

5?Installing?collected?packages:?chardet

6?Successfully?installed?chardet-3.0.4

您可以看到一個(gè)與uWSGI安裝明顯不同的輸出。

安裝chardet時(shí)直接從PyPI下載一個(gè).whl文件。車輪名稱為chardet-3.0.4-py2.py3-none-any。whl遵循特定的命名約定,稍后您將看到。從用戶的角度來看,更重要的是,當(dāng)pip在PyPI上找到一個(gè)兼容的滾輪時(shí),并不存在構(gòu)建階段。

從開發(fā)人員的角度來看,輪子是運(yùn)行以下命令的結(jié)果:

$?python?setup.py?bdist_wheel

為什么uWSGI給你一個(gè)源分布,而chardet提供一個(gè)輪子?您可以通過查看PyPI上每個(gè)項(xiàng)目的頁面并導(dǎo)航到下載文件區(qū)域來了解原因。本節(jié)將向您展示pip在PyPI索引服務(wù)器上實(shí)際看到的內(nèi)容:

由于項(xiàng)目的復(fù)雜性,uWSGI只提供了一個(gè)源分發(fā)版(uWSGI -2.0.18.tar.gz)。

chardet同時(shí)提供了一個(gè)輪盤和一個(gè)源代碼發(fā)行版,但是如果與您的系統(tǒng)兼容,pip會(huì)更喜歡輪盤。稍后您將看到如何確定兼容性。

另一個(gè)用于輪子安裝的兼容性檢查示例是psycopg2,它為Windows提供了大量的車輪,但沒有為L(zhǎng)inux或macOS客戶端提供任何輪子。這意味著,根據(jù)您的具體設(shè)置,pip安裝psycopg2可以獲取一個(gè)滾輪或源分發(fā)版。

為了避免這些類型的兼容性問題,一些包提供了多個(gè)輪子,每個(gè)輪子都針對(duì)特定的Python實(shí)現(xiàn)和底層操作系統(tǒng)。

到目前為止,您已經(jīng)看到了輪子和sdist之間的一些明顯區(qū)別,但更重要的是這些區(qū)別對(duì)安裝過程的影響。

輪子加速安裝

在上面,您看到了獲取預(yù)構(gòu)建輪子的安裝和下載sdist的安裝的比較。輪子使得Python包的端到端安裝速度更快,原因有兩個(gè):

在其他條件相同的情況下,輪子通常比源分發(fā)包更小,這意味著它們可以在網(wǎng)絡(luò)中更快地移動(dòng)。

直接從wheels安裝避免了從源分發(fā)版構(gòu)建包的中間步驟。

幾乎可以保證,安裝chardet只需uWSGI所需時(shí)間的一小部分。然而,這是一種不公平的比較,因?yàn)閏hardet是一個(gè)明顯更小和更簡(jiǎn)單的包。使用不同的命令,您可以創(chuàng)建一個(gè)更直接的比較,它將演示輪子造成的差異有多大。

你可以通過-no-binary選項(xiàng)讓pip忽略它對(duì)車輪的傾斜:

$?time?python?-m?pip?install?\

--no-cache-dir?\

--force-reinstall?\

--no-binary=:all:?\

cryptography

這個(gè)命令計(jì)算加密包的安裝時(shí)間,告訴pip使用源分發(fā)包,即使有合適的輪可用。包括:all:使規(guī)則適用于密碼學(xué)及其所有依賴關(guān)系。

在我的機(jī)器上,從開始到結(jié)束大約需要32秒。不僅安裝要花費(fèi)很長(zhǎng)時(shí)間,而且構(gòu)建加密還需要提供OpenSSL開發(fā)頭,并可用于Python。

現(xiàn)在可以重新安裝密碼學(xué),但是這次要確保pip使用來自PyPI的wheels。因?yàn)閜ip更喜歡輪子,所以這類似于完全不帶參數(shù)調(diào)用pip install。但在這種情況下,你可以讓意圖顯式通過要求車輪-純二進(jìn)制:

此選項(xiàng)僅花費(fèi)4秒多一點(diǎn)的時(shí)間,即僅為密碼學(xué)及其依賴項(xiàng)使用源分發(fā)版時(shí)所用時(shí)間的八分之一。

總結(jié)

以上是生活随笔為你收集整理的安装python有什么用_什么是Python Wheels?为什么要关心它?,python有什么用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩在线视频一区二区三区 | 日本国产一区二区三区 | 干日本少妇 | 婷婷二区 | 91高清无打码 | 林雅儿欧洲留学恋爱日记在线 | 日韩欧美黄 | 中文字幕久久久 | 午夜激情在线播放 | 国产乱子视频 | 国产三级网 | 精品动漫一区二区三区在线观看 | 色欲狠狠躁天天躁无码中文字幕 | 日韩欧美精品久久 | 天天干天天拍 | av涩涩 | 又爽又黄视频 | av五月天在线 | 最新精品国产 | 999久久久精品 | 17c国产精品一区二区 | av一区二区三 | 欧美一级大片在线观看 | 亚洲在线视频观看 | 成人入口| 日韩欧美猛交xxxxx无码 | 毛茸茸毛片 | 日本三级欧美三级 | 国产精品一区二区三区在线 | 18国产免费视频 | www.九九热.com | 粉嫩视频在线观看 | 国产精品毛片 | 国产精品久久777777毛茸茸 | www.xxx.国产| 800av免费在线观看 | 在线视频观看 | 三级黄色免费片 | 日韩欧美卡一卡二 | 原来神马电影免费高清完整版动漫 | 亚洲精品无码久久久久久久 | 国产色图片 | 波多野结衣在线视频免费观看 | 欧美男女激情 | 911看片| 亚洲成人影音 | 五月天福利视频 | 久久久久久激情 | 欲涩漫入口免费网站 | 99热99精品 | 波多野吉衣一区二区三区 | 久久激情婷婷 | 成人网在线播放 | 日韩色图在线观看 | 好吊视频一区二区三区四区 | 深夜福利1000| 黑人添美女bbb添高潮了 | 国产无码精品在线播放 | 丰满饥渴老女人hd | 国产免费aa | 91精品久久久久久综合五月天 | 黄色网址中文字幕 | 2022国产精品| 欧美日韩激情一区二区 | 日韩成人在线网站 | 黄在线免费看 | 男人插入女人下面的视频 | 午夜视频欧美 | 日韩女同互慰一区二区 | 全黄一级男人和女人 | 毛片资源 | 国产日韩欧美二区 | 嫩草视频在线免费观看 | 人碰人人 | 久久久无码18禁高潮喷水 | 婷婷精品 | 香蕉影院在线观看 | 日韩无砖 | 久久久久久穴 | 成人无码www在线看免费 | 伊人网av在线 | 国产三级91 | 亚洲欧美国产精品专区久久 | 日本妇女毛茸茸 | 中文字幕乱码中文乱码b站 国产一区二区三区在线观看视频 | 色峰视频 | 亚洲免费精品视频 | 欧美黄色a级片 | 潘金莲黄色一级片 | 男女激情网址 | 精品国产一区二区三区四区精华 | 海角国产乱辈乱精品视频 | 精品国产午夜福利在线观看 | 伊人一级片 | 在线视频免费观看你懂的 | 九九爱视频 | 中文字幕成人av | 黄色av小说在线观看 | 日本一区二区视频在线播放 |