使用conda+pip命令進行庫和環境的管理,就不在系統中安裝python環境了,而是基於conda的虛擬環境進行操作,可以實現環境隔離,兼容不同的python版本的程序同時運行。python程序 = 自己寫的程序 + 第三方包。我們在github上經常看到python程序的readme文件,有如下兩行代碼:
pip install -r requirements.txt
python main.py
conda與pip的配合的主要好處:
1.使用簡單
2.支持主流操作系統:win,mac,linux
3.支持虛擬環境,快速切換多個版本的python、包
4.第三方庫的安裝成功率高
為什麼不直接用pip,easy_install,virtualenv等?
因為這些工具都是聚焦python的體系,忽略了非python的依賴工具,如mkl,LLVM等。
conda、pip功能
pip:python的包管理器
Conda:包管理器+環境管理器。
對比圖如下:
conda的好處有很多,弊端在於支持的包沒有pip的種類豐富。他的依賴檢查的特性,可以讓你在安裝其他python包的時候,自動的去替你找依賴的包,一並安裝了。在安裝某些依賴很多的包時,如paddle-paddle,使用conda安裝的成功率,會比使用pip直接安裝成功率要高。原因在於conda的SAT算法,如下圖:
為什麼不直接用conda,還要用pip?
小眾的包,還是要使用pip來安裝的。總結一下:
conda指的是miniconda,去官網(https://docs.conda.io/en/latest/miniconda.html)下載即可。然後就是安裝到系統裡,記得最後勾選上,配置環境變量。
關於miniconda版本的問題,選擇高的版本沒問題,因為我們需要創建虛擬環境的,可以指定自己需要的python版本。
安裝完成之後,使用anaconda power shell 工具去測試一下。注意一定是power shell。
檢查conda版本的指令。
conda --version
列出所有環境:conda env list
創建環境:conda create --name 環境名稱(英文)
進入幻境:conda activate 環境名稱
退出環境:conda deactivate
刪除環境:conda remove --name 環境名稱 --all all是為了刪除干淨
創建指定版本的python環境案例:conda create --name 環境名稱 python=3.7
創建環境之後,激活環境,然後輸入python,檢查是不是按照你設置的python版本創建的環境。之後輸入exit()退出。
提示:python版本太高了也不好,有的包不兼容,3.7,3.8兼容都不錯。
因為conda和pip的資源服務器很多都在國外,避免不了的下載慢,這裡需要換成國內的加速鏡像。
可以使用清華大學開源軟件的鏡像站:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
按照裡面的步驟,就可以更換conda的源了
臨時使用: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple {包名}
永久使用:
第一步: 在C:\Users\Administrator 目錄下 創建pip文件夾
第二步:在第一步創建的文件夾下(C:\Users\Administrator\pip)創建pip.ini文件
第三步:記事本編輯保存pip.ini文件內容為以下部分:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
臨時使用: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple {包名}
永久使用:
執行以下語句
cd ~
mkdir .pip
cd .pip
vi pip.conf
pip.conf寫入
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
保存pip.conf