python 包 or 環境(python2 or python3?)管理

Conda和pip通常被認爲幾乎完全相同。雖然這兩個工具的某些功能重疊,但它們設計用於不同的目的。 Pip是Python Packaging Authority推薦的用於從Python Package Index安裝包的工具。 Pip安裝打包爲wheels或源代碼分發的Python軟件。後者可能要求系統安裝兼容的編譯器和庫。
Conda是跨平臺的包和環境管理器,可以安裝和管理來自Anaconda repository以 Anaconda Cloud的conda包。 Conda包是二進制文件,徐需要使用編譯器來安裝它們。另外,conda包不僅限於Python軟件。它們還可能包含C或C ++庫,R包或任何其他軟件。
這是conda和pip之間的關鍵區別。 Pip安裝Python包,而conda安裝包可能包含用任何語言編寫的軟件的包。在使用pip之前,必須通過系統包管理器或下載並運行安裝程序來安裝Python解釋器。而Conda可以直接安裝Python包以及Python解釋器。
另一個區別是conda能夠創建可以包含不同版本的Python或其他軟件包的隔離環境。在使用數據科學工具時,這非常有用,因爲不同的工具可能包含衝突的要求,這些要求可能會阻止它們全部安裝到單個環境中。 Pip沒有內置的環境支持,而是依賴於virtualenv或venv 等其他工具來創建隔離環境。 pipenv,poetry和hatch wrap pip和virtualenv等工具提供了統一的方法來處理這些環境。
Pip和conda在如何實現環境中的依賴關係方面也有所不同。安裝包時,pip會在遞歸的串行循環中安裝依賴項。沒有努力確保同時滿足所有包的依賴性。如果較早安裝的軟件包與稍後安裝的軟件包具有不兼容的依賴性版本,則可能導致破壞的環境。conda使用可確保滿足環境中安裝的所有包的所有要求。此檢查可能需要額外的時間,但有助於防止創建破壞的環境,前期關於依賴關係包的元數據是正確的。
考慮到conda和pip之間的相似性,有些人試圖將這些工具結合起來創建數據科學環境也就不足爲奇了。將pip與conda結合的主要原因是有些包只能通過pip安裝。 Anaconda創酷提供超過1,500個軟件包,包括最流行的數據科學,機器學習和AI框架。這些,以及包括conda-forge和bioconda在內的數據通過Anaconda雲提供的數千個附加軟件包,可以使用conda進行安裝。儘管有大量的軟件包,但與PyPI上提供的150,000多個軟件包相比,它仍然很小。有時候需要的包沒有conda包,但在PyPI上有,可以用pip安裝。

conda管理python環境

創建Python2.7環境,執行create命令如下:

conda create --name py27 python=2.7 #創建python2.7的環境,對應環境和文件夾名稱:py27

激活Python2.7環境:

conda activate py27  #py27爲上一步創建Python2.7環境時命名的名字
#
# To activate this environment, use
#
#     $ conda activate py27
#
# To deactivate an active environment, use
#
#     $ conda deactivate

更多conda相關文檔:https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

vitualenv管理python

sudo apt update
sudo apt install python3-dev python3-pip
sudo pip3 install -U virtualenv  # system-wide install

創建一個新的虛擬環境,方法是選擇 Python 解釋器並創建一個 ./venv 目錄來存放它:

virtualenv --system-site-packages -p python3 ./venv

使用特定於 shell 的命令激活該虛擬環境:

source ./venv/bin/activate  # sh, bash, ksh, or zsh

當 virtualenv 處於有效狀態時,shell 提示符帶有 (venv) 前綴。

在不影響主機系統設置的情況下,在虛擬環境中安裝軟件包。首先升級 pip:

(venv)$ pip install --upgrade pip

(venv)$ pip list  # show packages installed within the virtual environment

之後要退出 virtualenv,請使用以下命令:

deactivate  # don't exit until you're done using TensorFlow

更多使用請參考tensorflow的安裝教程https://tensorflow.google.cn/install/pip


https://www.jianshu.com/p/5601dab5c9e5
https://www.digitalocean.com/community/tutorials/how-to-install-anaconda-on-ubuntu-18-04-quickstart
Anaconda下載和使用教程(如何使用Anaconda管理不同python環境)https://blog.csdn.net/guanmaoning/article/details/80031279

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章