溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python中有哪些常用的conda命令

發(fā)布時(shí)間:2021-06-15 17:27:38 來(lái)源:億速云 閱讀:354 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

Python中有哪些常用的conda命令,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

1 conda介紹

conda是一個(gè)python的包管理器,用來(lái)管理、安裝、更新python的包和相關(guān)的依賴。另外,conda可以為特定任務(wù)創(chuàng)建獨(dú)立的環(huán)境,每個(gè)環(huán)境中可以只安裝需要用到的包和依賴,還可以將環(huán)境導(dǎo)出成yml文件,然后別人可以通過(guò)你導(dǎo)出的yml文件可以創(chuàng)建一樣的環(huán)境。

1.1 查看版本

conda -V
#或
conda info

1.2 更新到當(dāng)前版本

conda update conda

1.3 查看某個(gè)命令幫助文檔

conda [command] --help

例如conda create --help

2 環(huán)境 (environment)

每個(gè)環(huán)境相當(dāng)于一個(gè)獨(dú)立的文件目錄,目錄下是已經(jīng)安裝了的包。切換到哪個(gè)環(huán)境,conda就會(huì)把包安裝在哪個(gè)環(huán)境的目錄下。默認(rèn)的環(huán)境為base。

2. 1 查看所有環(huán)境

conda info --envs

2.2 創(chuàng)建環(huán)境

#創(chuàng)建一個(gè)名為ENVNAME的環(huán)境
conda create --name ENVNAME

#創(chuàng)建一個(gè)名為ENVNAME的環(huán)境,并在該環(huán)境下包含某個(gè)版本的python
conda create --name ENVNAME python=3.9

#創(chuàng)建環(huán)境的同時(shí),安裝某個(gè)包
conda create --name ENVNAME python=3.9 PKG1 PKG2

--name也可以寫(xiě)作-n

例如conda create --name zyy創(chuàng)建了一個(gè)名為zyy的環(huán)境。通過(guò)命令conda list --name zyy查看zyy環(huán)境下有哪些包,可以發(fā)現(xiàn)此時(shí)該環(huán)境是空的,沒(méi)有任何包。

2.3 激活和關(guān)閉環(huán)境

#激活ENVNAME環(huán)境
conda activate ENVNAME
#關(guān)閉退出當(dāng)前環(huán)境
conda deactivate

2.4 查看某個(gè)環(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è)置

有時(shí)候在某個(gè)環(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)境下安裝某個(gè)版本的包
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)境卸載某個(gè)包
conda uninstall PKG

#卸載指定環(huán)境中的某個(gè)包
conda uninstall PKG --name ENVIRONMENT

4 源 (channel)

conda的channel就是各個(gè)python包所在的遠(yuǎn)程地址,中文常常稱作"源"。python的包存放在某個(gè)channel中,然后每個(gè)人在安裝某個(gè)package的時(shí)候,此package便通過(guò)網(wǎng)絡(luò)從遠(yuǎn)程的channel下載到本地然后安裝到當(dāng)前的環(huán)境(environment)中。

默認(rèn)channel是 https://repo.anaconda.com/pkgs/,可能會(huì)收費(fèi)。而conda-forge是免費(fèi)的。

4.1 查看channel:

conda config --show

輸入上述命令后,可以在命令行看到下列結(jié)果,發(fā)現(xiàn)只有兩個(gè)channels,一個(gè)是conda-forge,一個(gè)是defaults??梢钥吹絛efault_channels來(lái)源有兩個(gè):https://repo.anaconda.com/pkgs/main和https://repo.anaconda.com/pkgs/r

命令conda config --show除了顯示channels之外,還會(huì)顯示別的配置,如果只需要查看channels及其優(yōu)先級(jí),可以用

conda config --get channels

Python中有哪些常用的conda命令

4.2 添加channel:

#在channel list最上面添加channel,使其優(yōu)先級(jí)最高
conda config --prepend channels CHANNEL
#或
conda config --add channels CHANNEL

#在channel list最下方添加channel,使其優(yōu)先級(jí)最低
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/

添加之后,再看看有沒(méi)有添加成功,conda config --get channels

Python中有哪些常用的conda命令

除了defaults和conda-forge,還多了四個(gè)我們剛剛添加的源,說(shuō)明添加成功。

4.3 刪除channel

conda config --remove channels CHANNEL

例如,剛剛添加了北外鏡像的源,現(xiàn)在我們來(lái)刪掉:

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 一個(gè)完整示例

查看channel

conda config --get channels

Python中有哪些常用的conda命令

添加北外的源:

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

Python中有哪些常用的conda命令

查看當(dāng)前系統(tǒng)有多少個(gè)環(huán)境

conda env list

顯示:

Python中有哪些常用的conda命令

表明現(xiàn)在只有一個(gè)base環(huán)境。

創(chuàng)建新環(huán)境zyy,并且同時(shí)安裝python3.9, matplotlib, numpy, netcdf4

conda create --name zyy python=3.9 matplotlib numpy netcdf4

Python中有哪些常用的conda命令

Proceed ([y]/n)?輸入 y繼續(xù)。然后開(kāi)始安裝包和相關(guān)的依賴。

最后顯示:

Python中有哪些常用的conda命令

表明環(huán)境創(chuàng)建成功。

然后切換到zyy環(huán)境:

conda activate zyy

Python中有哪些常用的conda命令

切換環(huán)境后,發(fā)現(xiàn)前面括號(hào)中的內(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)容如下:

Python中有哪些常用的conda命令

接下來(lái)我們看如何從已有的yml文件中導(dǎo)入環(huán)境。

conda env create --file my_env.yml

顯示這個(gè)錯(cuò)誤: CondaValueError: prefix already exists: /home/yyzhong/anaconda3/envs/zyy

因?yàn)閦yy環(huán)境已經(jīng)存在了。為此,我們可以先把my_env.yml第一行中的zyy改稱zyy2。然后

conda env create --file my_env.yml

然后通過(guò)

conda env list

關(guān)于Python中有哪些常用的conda命令問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI