整理Python中常用的conda命令操作
1 conda介紹
conda是一個python的包管理器,用來管理、安裝、更新python的包和相關(guān)的依賴。另外,conda可以為特定任務(wù)創(chuàng)建獨立的環(huán)境,每個環(huán)境中可以只安裝需要用到的包和依賴,還可以將環(huán)境導(dǎo)出成yml文件,然后別人可以通過你導(dǎo)出的yml文件可以創(chuàng)建一樣的環(huán)境。
1.1 查看版本
conda -V #或 conda info
1.2 更新到當(dāng)前版本
conda update conda
1.3 查看某個命令幫助文檔
conda [command] --help
例如conda create --help
2 環(huán)境 (environment)
每個環(huán)境相當(dāng)于一個獨立的文件目錄,目錄下是已經(jīng)安裝了的包。切換到哪個環(huán)境,conda就會把包安裝在哪個環(huán)境的目錄下。默認(rèn)的環(huán)境為base
。
2. 1 查看所有環(huán)境
conda info --envs
2.2 創(chuàng)建環(huán)境
#創(chuàng)建一個名為ENVNAME的環(huán)境 conda create --name ENVNAME #創(chuàng)建一個名為ENVNAME的環(huán)境,并在該環(huán)境下包含某個版本的python conda create --name ENVNAME python=3.9 #創(chuàng)建環(huán)境的同時,安裝某個包 conda create --name ENVNAME python=3.9 PKG1 PKG2
--name
也可以寫作-n
。
例如conda create --name zyy
創(chuàng)建了一個名為zyy的環(huán)境。通過命令conda list --name zyy
查看zyy環(huán)境下有哪些包,可以發(fā)現(xiàn)此時該環(huán)境是空的,沒有任何包。
2.3 激活和關(guān)閉環(huán)境
#激活ENVNAME環(huán)境 conda activate ENVNAME
#關(guān)閉退出當(dāng)前環(huán)境 conda deactivate
2.4 查看某個環(huán)境下安裝的包
#當(dāng)前環(huán)境的包 conda list
#名為ENVNAME的環(huán)境的包 conda list --name ENVNAME #或 conda list -n ENVNAME
2.5 刪除環(huán)境
conda remove --name ENVNAME --all
2.6 導(dǎo)出環(huán)境到y(tǒng)ml文件
#將ENVIRONMENT環(huán)境導(dǎo)出到env.yml文件中(包括所有安裝的包以及依賴) conda env export --name ENVIRONMENT > env.yml #或 conda env export -n ENVIRONMENT > env.yml #將ENVIRONMENT環(huán)境導(dǎo)出到env.yml文件中(不包括附帶安裝的依賴) conda env export --from-history --name ENVIRONMENT > env.yml
2.7 根據(jù)yml文件創(chuàng)建環(huán)境
conda env create --file envname.yml #或 conda env create -f envname.yml
2.8 環(huán)境變量設(shè)置
有時候在某個環(huán)境下需要設(shè)置環(huán)境變量。
查看當(dāng)前的環(huán)境變量:conda env config vars list
設(shè)置環(huán)境變量:conda env config vars set my_var=value
取消環(huán)境變量:conda env config vars unset my_var
3 安裝和卸載包
#在目前所在環(huán)境下安裝名為PKG的包 conda install PKG #在目前所在環(huán)境下安裝某個版本的包 conda install PKG=3.1.4 #安裝PKG包到指定環(huán)境ENVIRONMENT conda install PKG --name ENVIRONMENT #或 conda install PKG -n ENVIRONMENT #從名字為CHANNEL的源中安裝名字為PKG包 conda install PKG --channel CHANNEL #從當(dāng)前環(huán)境卸載某個包 conda uninstall PKG #卸載指定環(huán)境中的某個包 conda uninstall PKG --name ENVIRONMENT
4 源 (channel)
conda的channel就是各個python包所在的遠(yuǎn)程地址,中文常常稱作"源"。python的包存放在某個channel中,然后每個人在安裝某個package的時候,此package便通過網(wǎng)絡(luò)從遠(yuǎn)程的channel下載到本地然后安裝到當(dāng)前的環(huán)境(environment)中。
默認(rèn)channel是 https://repo.anaconda.com/pkgs/,可能會收費。而conda-forge是免費的。
4.1 查看channel:
conda config --show
輸入上述命令后,可以在命令行看到下列結(jié)果,發(fā)現(xiàn)只有兩個channels,一個是conda-forge,一個是defaults。可以看到default_channels來源有兩個:https://repo.anaconda.com/pkgs/main和https://repo.anaconda.com/pkgs/r
命令conda config --show
除了顯示channels之外,還會顯示別的配置,如果只需要查看channels及其優(yōu)先級,可以用
conda config --get channels
4.2 添加channel:
#在channel list最上面添加channel,使其優(yōu)先級最高 conda config --prepend channels CHANNEL #或 conda config --add channels CHANNEL #在channel list最下方添加channel,使其優(yōu)先級最低 conda config --append channels CHANNEL
添加北外鏡像的源:
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/ #Conda Forge conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/ #pytorch conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
添加之后,再看看有沒有添加成功,conda config --get channels
除了defaults和conda-forge,還多了四個我們剛剛添加的源,說明添加成功。
4.3 刪除channel
conda config --remove channels CHANNEL
例如,剛剛添加了北外鏡像的源,現(xiàn)在我們來刪掉:
conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/ conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/ conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/ conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
再次查看當(dāng)前的channels, conda config --get channels
5 一個完整示例
查看channel
conda config --get channels
添加北外的源:
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
查看現(xiàn)在的channel
查看當(dāng)前系統(tǒng)有多少個環(huán)境
conda env list
顯示:
表明現(xiàn)在只有一個base環(huán)境。
創(chuàng)建新環(huán)境zyy,并且同時安裝python3.9, matplotlib, numpy, netcdf4
conda create --name zyy python=3.9 matplotlib numpy netcdf4
Proceed ([y]/n)?
輸入 y繼續(xù)。然后開始安裝包和相關(guān)的依賴。
最后顯示:
表明環(huán)境創(chuàng)建成功。
然后切換到zyy環(huán)境:
conda activate zyy
切換環(huán)境后,發(fā)現(xiàn)前面括號中的內(nèi)容已經(jīng)由(base)變?yōu)?zyy)。
然后查看系統(tǒng)中存在哪些環(huán)境:
conda env list
接著導(dǎo)出當(dāng)前環(huán)境
conda env export --name zyy --from-history my_env.yml
my_env.yml
內(nèi)容如下:
接下來我們看如何從已有的yml文件中導(dǎo)入環(huán)境。
conda env create --file my_env.yml
顯示這個錯誤: CondaValueError: prefix already exists: /home/yyzhong/anaconda3/envs/zyy
因為zyy環(huán)境已經(jīng)存在了。為此,我們可以先把my_env.yml第一行中的zyy改稱zyy2。然后
conda env create --file my_env.yml
然后通過
conda env list
可以看到,現(xiàn)在存在3個環(huán)境了。
到此這篇關(guān)于整理Python中常用的conda命令行操作的文章就介紹到這了,更多相關(guān)conda命令行常用操作內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。