如何在 PyPI安裝python的軟件包?


安裝軟件包

本節介紹如何安裝Python的基本知識。包裹.

需要注意的是,這個上下文中的“包”一詞被用作分布(即要安裝的一組軟件),而不是指包裝在Python源代碼中導入(即模塊的容器)。Python社區中常見的引用分布使用“包”一詞。使用“分發”這個術語通常是不可取的,因為它很容易與Linux發行版或另一個更大的軟件發行版(如Python本身)混淆。

安裝軟件包的要求

本節描述安裝其他Python包之前應遵循的步驟。

確保可以從命令行運行Python

在進一步研究之前,請確保您有Python,並且您的命令行中提供了預期的版本。您可以通過運行以下命令(win+r打開命令行,然后運行如下命令)來檢查這一點:

python --version

你應該得到一些輸出,比如Python 3.6.3...如果您沒有Python,請從python.org或參考安裝Python“Hitchhiker Python指南”一節。

 

如果您是新來的,並且遇到這樣的錯誤:

>>>
>>> python --version Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'python' is not defined 

這是因為本教程中的這個命令和其他建議的命令打算在(又稱a終端控制台)。見Python for初學者入門教程有關使用操作系統的shell和與Python交互的介紹。

 

如果您使用的是增強的shell(如IPython或木星筆記本),則可以運行系統命令,如本教程中的命令,方法是使用!性格:

In [1]: import sys
        !{sys.executable} --version
Python 3.6.3

建議寫{sys.executable}而不是平淡python為了確保在Python安裝中運行與當前正在運行的記事本相匹配的命令(這可能不是與python(命令指)。

 

由於大多數Linux發行版處理Python 3遷移的方式,使用系統Python而不創建虛擬環境的Linux用戶應該首先替換python本教程中的python3pip命令用pip3 --user...做運行本教程中的任何命令sudo:如果您獲得了權限錯誤,請回到關於創建虛擬環境的部分,設置一個環境,然后繼續編寫教程。

確保您可以從命令行運行pip。

另外,你需要確保PIP可用。您可以通過運行以下命令來檢查這一點:

pip --version

如果您從源代碼安裝Python,則使用python.org,或通過自制你應該已經有了。如果您在Linux上並使用操作系統包管理器安裝,則可能需要單獨安裝pip,請參見用Linux包管理器安裝pip/setuptools/輪子.

如果pip還沒有安裝,那么首先嘗試從標准庫引導它:

python -m ensurepip --default-pip

如果這還不能讓你跑pip:

  • 安全下載get-pip.py 1

  • python get-pip.py2這將安裝或升級pip。此外,它將安裝設置工具車輪如果他們還沒安裝好的話。

    警告

     

    如果您使用的是由操作系統或其他包管理器管理的Python安裝,請小心。py與這些工具不協調,可能會使您的系統處於不一致的狀態。你可以用python get-pip.py --prefix=/usr/local/安裝在/usr/local這是為本地安裝的軟件設計的。

確保pip、setuptools和輪子都是最新的。

pip單獨安裝就足以從預構建的二進制檔案中安裝,直到最新的副本。setuptoolswheel項目對於確保您也可以從源檔案中安裝非常有用:

python -m pip install --upgrade pip setuptools wheel 

或者,創建一個虛擬環境。

看見下面一節關於細節,但是這里是基本的文夫 3命令用於典型的Linux系統:

python3 -m venv tutorial_env
source tutorial_env/bin/activate

這將在tutorial_env子目錄,並配置當前shell以將其用作默認值。python環境。

創建虛擬環境

Python“虛擬環境”允許Python包裹安裝在特定應用程序的獨立位置,而不是全局安裝。如果您希望安全地安裝全局命令行工具,請參見安裝獨立命令行工具.

假設您有一個需要LibFoo版本1的應用程序,而另一個應用程序需要版本2。如果將所有內容安裝到/usr/lib/python3.6/site-Package(或平台的標准位置)中,那么很容易在無意中升級不應該升級的應用程序的情況下結束。

或者更廣泛地說,如果您想安裝一個應用程序而不安裝它呢?如果應用程序工作正常,那么其庫或這些庫的版本中的任何更改都會破壞應用程序。

另外,如果你不能安裝包裹進入全局站點-軟件包目錄?例如,在共享主機上。

在所有這些情況下,虛擬環境都可以幫助您。它們有自己的安裝目錄,不與其他虛擬環境共享庫。

目前,有兩種常見的創建Python虛擬環境的工具:

  • 文夫默認情況下在Python3.3及更高版本中可用,並安裝PIP設置工具在Python3.4及更高版本中創建的虛擬環境。

  • 虛擬人需要單獨安裝,但支持Python2.7+和Python3.3+,並且PIP設置工具車輪默認情況下總是安裝在創建的虛擬環境中(不管Python版本如何)。

基本用法如下:

使用文夫:

python3 -m venv <DIR> source <DIR>/bin/activate 

使用虛擬人:

virtualenv <DIR> source <DIR>/bin/activate 

有關更多信息,請參見文夫醫生或虛擬人醫生。

使用來源在Unixshell下,確保虛擬環境的變量是在當前shell中設置的,而不是在子進程中設置的(子進程隨后消失,沒有任何有用的效果)。

在上述兩種情況下,Windows用戶都應該使用來源命令,但是應該運行激活腳本直接來自命令shell,如下所示:

<DIR>\Scripts\activate 

直接管理多個虛擬環境可能會變得乏味,因此依賴關系管理教程引入了一個更高級的工具,皮蓬,它會自動管理您工作的每個項目和應用程序的單獨虛擬環境。

使用pip安裝

PIP是推薦的安裝程序。下面,我們將介紹最常見的使用場景。有關更多細節,請參見PIP文檔,其中包括一個完整的參考指南.

從PyPI安裝

最常見的用法PIP是從Python包索引使用需求說明符...一般來說,需求說明符由一個項目名稱和一個可選的項目名稱組成。版本說明符佩普440包含全規格當前支持的說明符。下面是一些例子。

安裝最新版本的“SomeProject”:

pip install "SomeProject" 

若要安裝特定版本,請執行以下操作:

pip install "SomeProject==1.4" 

安裝大於或等於一個版本而小於另一個版本:

pip install "SomeProject>=1,<2" 

安裝的版本“兼容”有一個特定的版本:4

pip install "SomeProject~=1.4.2" 

在本例中,這意味着安裝“=1.4.*”版本,也就是“>=1.4.2”版本。

源分布與車輪

PIP可以從源分布(Sdist)車輪,但是如果兩者都出現在pypi上,pip會更喜歡兼容的。車輪.

車輪是預建的分布提供更快安裝速度的格式源分布(Sdist),尤其是當項目包含已編譯的擴展時。

如果PIP如果找不到要安裝的車輪,它將在本地構建一個車輪並將其緩存以供將來安裝,而不是在將來重新構建源分布。

升級包

升級已安裝的SomeProject來自PyPI的最新報道。

pip install --upgrade SomeProject 

安裝到用戶站點

安裝包裹與當前用戶隔離的,請使用--user國旗:

pip install --user SomeProject 

有關更多信息,請參見用戶安裝從PIP文檔中分離出來。

注意,--user當在虛擬環境中時,標志沒有效果-所有安裝命令都會影響虛擬環境。

如果SomeProject定義任何命令行腳本或控制台入口點,--user將使它們安裝在用戶群的二進制目錄,該目錄可能已經存在,也可能沒有出現在shell的PATH...(從版本10開始,pip在將腳本安裝到外部目錄時顯示警告。PATH)如果安裝后shell中的腳本不可用,則需要將該目錄添加到PATH:

  • 在linux和macos上,您可以通過運行python -m site --user-base加上bin一直到最后。例如,這通常會打印~/.local(與~擴展到指向主目錄的絕對路徑),因此需要添加~/.local/bin敬你的PATH...你可以把你的PATH永久地修改~/.剖面.

  • 在Windows上,您可以通過運行py -m site --user-site替換site-packages帶着Scripts...例如,這可能會返回C:\Users\Username\AppData\Roaming\Python36\site-packages所以你需要把你的PATH包括C:\Users\Username\AppData\Roaming\Python36\Scripts...您可以設置您的用戶。PATH永久保存在控制面板...您可能需要注銷PATH更改生效。

需求文件

中指定的要求列表。需求文件.

pip install -r requirements.txt 

從VCS安裝

在“可編輯”模式下從VCS安裝一個項目。有關語法的完整細分,請參見pip關於風投支持.

pip install -e git+https://git.repo/some_pkg.git#egg=SomeProject # from git pip install -e hg+https://hg.repo/some_pkg#egg=SomeProject # from mercurial pip install -e svn+svn://svn.repo/some_pkg/trunk/#egg=SomeProject # from svn pip install -e git+https://git.repo/some_pkg.git@feature#egg=SomeProject # from a branch 

從其他索引安裝

從備用索引安裝

pip install --index-url http://my.package.repo/simple/ SomeProject 

在安裝期間搜索附加索引,PyPI

pip install --extra-index-url http://my.package.repo/simple SomeProject 

從本地src樹安裝

從本地src安裝發展模式,即項目似乎已安裝,但仍可從src樹中編輯。

pip install -e <path> 

您也可以正常地從src安裝。

pip install <path> 

從本地檔案安裝

安裝特定的源存檔文件。

pip install ./downloads/SomeProject-1.0.4.tar.gz 

從包含檔案的本地目錄安裝(不要檢查PyPI)

pip install --no-index --find-links=file:///local/dir/ SomeProject pip install --no-index --find-links=/local/dir/ SomeProject pip install --no-index --find-links=relative/dir/ SomeProject 

從其他來源安裝

要從其他數據源(例如AmazonS 3存儲)安裝,可以創建一個在Pep 503符合索引格式,並使用--extra-index-url標志指示pip使用該索引。

./s3helper --port=7777 pip install --extra-index-url http://localhost:7777 SomeProject 

安裝預放映機

除了穩定的版本之外,還可以找到預發布和開發版本。默認情況下,PIP只找到穩定的版本。

pip install --pre SomeProject 

安裝Setuptools“Extras”

安裝setuptools附加程序.

$ pip install SomePackage[PDF]
$ pip install SomePackage[PDF]==3.0
$ pip install -e .[PDF]==3.0  # editable project in current directory

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM