0.Anaconda介紹
Anaconda指的是一個開源的Python發(fā)行版本,包含了許多工具包,除了基本的python和pip钠惩,還有做CV的opencv包柒凉,web開發(fā)的web包,與matlab畫圖功能相同的matplotlib包以及AI和機器學習會用到的numpy篓跛、tensorflow和pytorch膝捞。
除此之外,Anaconda有命令行模式prompt與圖形界面navigator愧沟,剛上手的時候感覺圖像界面真香蔬咬,慢慢用著要求越來越多的時候發(fā)現(xiàn)命令行模式無論在速度上還是功能上都要比圖形界面好很多。本文會以命令行模式為例央渣。
Anaconda比起其他IDE來說不算笨重计盒,創(chuàng)建和管理環(huán)境很方便,Anaconda占內(nèi)存會越來越大是因為下載的安裝包越來越多芽丹,只要將pkgs中不需要的東西刪掉體積就會小很多北启。
在Anaconda平臺上集成了VS code、jupyter notenook和spyder這些工具拔第,都可以用來編譯和調(diào)試咕村,可以選擇性的安裝。
1.Anaconda環(huán)境
1.1why創(chuàng)建不同環(huán)境
初用者肯定會有這樣的疑問蚊俺,在base環(huán)境下把所有需要用的包都裝上去不就可以了懈涛,為什么還要創(chuàng)建那么多不同的環(huán)境?
如果所有安裝包需要的版本號都是兼容的泳猬,確實可以這樣做批钠,可是實際上不同的包對其他包的版本依賴是各不相同的,所以需要創(chuàng)建不同的環(huán)境來使用這些工具包得封。
1.2默認路徑管理環(huán)境
1.2.1創(chuàng)建環(huán)境
(base) C:\Users\dell>conda create -n my_env python=3.7
-n后跟環(huán)境名稱
python=3.7選擇python的版本號埋心,如果不加默認安裝最新版本
也可以在創(chuàng)建環(huán)境時指定安裝包,numpy為一個安裝包的名字
conda create -n my_env numpy
如果需要更多的功能忙上,可以查看拷呆,其他命令也可如此
conda create -h
創(chuàng)建環(huán)境時會有如下提示
(base) C:\Users\dell>conda create -n my_env python=3.7
Collecting package metadata (repodata.json): done
Solving environment: \
Warning: >10 possible package resolutions (only showing differing packages):
- https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0, https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
... and othedone
## Package Plan ##
environment location: C:\Users\dell\Anaconda3\envs\my_env
added / updated specs:
- python=3.7
The following NEW packages will be INSTALLED:
ca-certificates anaconda/pkgs/main/win-64::ca-certificates-2020.1.1-0
certifi anaconda/pkgs/main/win-64::certifi-2019.11.28-py37_0
openssl anaconda/pkgs/main/win-64::openssl-1.1.1d-he774522_4
pip anaconda/pkgs/main/win-64::pip-20.0.2-py37_1
python anaconda/pkgs/main/win-64::python-3.7.6-h60c2a47_2
setuptools anaconda/pkgs/main/win-64::setuptools-45.2.0-py37_0
sqlite anaconda/pkgs/main/win-64::sqlite-3.31.1-he774522_0
vc anaconda/pkgs/main/win-64::vc-14.1-h0510ff6_4
vs2015_runtime anaconda/pkgs/main/win-64::vs2015_runtime-14.16.27012-hf0eaf9b_1
wheel anaconda/pkgs/main/win-64::wheel-0.34.2-py37_0
wincertstore anaconda/pkgs/main/win-64::wincertstore-0.2-py37_0
Proceed ([y]/n)? y
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate my_env
#
# To deactivate an active environment, use
#
# $ conda deactivate
resolutions后面跟的是下載路徑,由于我添加了幾個國內(nèi)的鏡像疫粥,所以下載地址為清華茬斧、中科大和阿里云的鏡像。package plan后面會顯示下載包的信息梗逮,由于我的/pkgs文件夾中已經(jīng)有下載過的這些包了项秉,所以不會再下載。這些安裝包是這個環(huán)境基礎(chǔ)的包库糠。解讀提示信息當安裝出bug/bugs的時候是很重要的伙狐,可以幫助你很快的定位到出錯的源頭涮毫,即使解決不了,也不用浪費時間瞎忙活贷屎。
建立環(huán)境后可以查看以下當前的環(huán)境罢防,可以看到my_env已經(jīng)建立,*指向當前所在環(huán)境
(base) C:\Users\dell>conda info --envs
# conda environments:
#
base * C:\Users\dell\Anaconda3
OpenCV C:\Users\dell\Anaconda3\envs\OpenCV
my_env C:\Users\dell\Anaconda3\envs\my_env
tensorflow_2 C:\Users\dell\Anaconda3\envs\tensorflow_2
web C:\Users\dell\Anaconda3\envs\web
E:\local\pytorch
1.2.2進入環(huán)境/激活環(huán)境
用以下命令唉侄,my_env為環(huán)境名字
(base) C:\Users\dell>conda activate my_env
(my_env) C:\Users\dell>
1.2.3退出環(huán)境
(my_env) C:\Users\dell>conda deactivate
(base) C:\Users\dell>
1.2.4刪除環(huán)境
注意刪除my_env時要先退出my_env
(base) C:\Users\dell>conda remove -n my_env --all
1.3指定路徑管理環(huán)境
1.3.1創(chuàng)建環(huán)境
E:\local\my_env_2為環(huán)境路徑
(base) C:\Users\dell>conda create --prefix=E:\local\my_env_2 python=3.7
此時所有環(huán)境為
base * C:\Users\dell\Anaconda3
OpenCV C:\Users\dell\Anaconda3\envs\OpenCV
my_env C:\Users\dell\Anaconda3\envs\my_env
tensorflow_2 C:\Users\dell\Anaconda3\envs\tensorflow_2
web C:\Users\dell\Anaconda3\envs\web
E:\local\my_env_2
E:\local\pytorch
發(fā)現(xiàn)新創(chuàng)建的環(huán)境沒有名字咒吐,要通過路徑來訪問
1.3.2激活環(huán)境
(base) C:\Users\dell>conda activate E:\local\my_env_2
(E:\local\my_env_2) C:\Users\dell>
1.3.3刪除環(huán)境
(base) C:\Users\dell>conda remove --prefix=E:\local\my_env_2 --all
2.安裝包
2.0設(shè)置鏡像源
可以添加多個鏡像源,中科大源属划、清華源恬叹、阿里源都挺好用
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set show_channel_urls yes
pip設(shè)置鏡像源可以在pip.ini中修改,我的pip.ini位于C:\Users\dell\AppData\Roaming\pip同眯,配置了阿里云的鏡像
[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
2.1升級包的版本
運行以下命令可以將python包升級到最新版本
(base) C:\Users\dell>conda update -n my_env python
2.2安裝包
2.2.1conda安裝
可以指定安裝包的版本號绽昼,也可以不指定,默認安裝最新版本须蜗,需要在相關(guān)網(wǎng)站上根據(jù)自己的硬件配置選擇合適的版本號
(base) C:\Users\dell>conda install tensorflow=1.13.1
2.2.2pip安裝
(base) C:\Users\dell>pip install tensorflow==1.13.1
2.2.3安裝包列表
(base) C:\Users\dell>conda list
2.2.4刪除緩存中無用包
(base) C:\Users\dell>conda clean -p
(base) C:\Users\dell>conda clean -t
2.3刪除包
指定環(huán)境中刪除包(pip)
(base) C:\Users\dell>conda remove -n my_env pip
2.4安裝jupyter硅确、spyder
(my_env) C:\Users\dell>pip install jupyter
(my_env) C:\Users\dell>pip install spyder
3.anaconda navigator
3.0介紹
navigator中可以創(chuàng)建刪除環(huán)境,搜索安裝包明肮,指定安裝包的版本菱农,在指定環(huán)境中安裝并打開jupyter等
3.1管理環(huán)境
進入環(huán)境界面可以看到當前所在環(huán)境和環(huán)境列表,下方紅色框選項為創(chuàng)建柿估、克隆循未、導入和刪除環(huán)境
3.2安裝包
圖中下拉列表可以查看已安裝未安裝的包,channel可以添加源秫舌,upadate可以更新資源的妖,搜索框可以查找需要的包。包的右端為版本號足陨,藍色標志為可以更新的包羔味。
右鍵選中包,可以選擇刪除或安裝指定版本
3.3jupyter钠右、spyder
選擇環(huán)境后依次點擊install、launch即可使用jupyter和spyder