Python基礎—conda使用筆記 1. 環境配置 由於用conda管理虛擬環境真滴很方便,所以主要使用conda,就不單獨去裝Python了。 1.1. Miniconda3安裝 Miniconda3官網下載地址:Miniconda Miniconda3清華鏡像下載:清華鏡像-Miniconda ...
Python基礎—conda使用筆記
1. 環境配置
- 由於用conda管理虛擬環境真滴很方便,所以主要使用conda,就不單獨去裝Python了。
1.1. Miniconda3安裝
- Miniconda3官網下載地址:Miniconda
- Miniconda3清華鏡像下載:清華鏡像-Miniconda
- 對於Windows系統:Miniconda安裝跟正常的軟體安裝是一樣的,這裡不做過多描述。
- 當然,可以參考博客,寫得很詳細:python與anaconda安裝(先安裝了python後安裝anaconda,基於python已存在的基礎上安裝anaconda)——逼死強迫症、超詳解
1.2. 配置環境變數
- 在系統變數—
Path
中添加Miniconda的相關路徑 - 這裡我的Miniconda的安裝路徑是:
D:\DeveloperTools\Miniconda3
,所以在Path
中添加如下:D:\DeveloperTools\Miniconda3\Library\bin D:\DeveloperTools\Miniconda3\Scripts D:\DeveloperTools\Miniconda3
- 環境變數配置了,就可以在任意位置下使用conda了
1.3. 設置國內鏡像源
1.3.1. 方法一:命令行方式
-
查看anaconda中已經存在的鏡像源(channels:通道、渠道、途徑)
conda config --show channels
- 如果沒有設置過鏡像源,則show channels結果顯示:defaults(conda預設的通道,即從官網下載包)
-
添加國內鏡像源,這裡以清華鏡像源為例(永久添加,可刪除)
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/
- 值得註意的是:上面設置的兩個源的資源路徑為:
/anaconda/paks/free
和/anaconda/pkgs/main
這就限制了只能在這資源路徑之下查找我們需要的包。 - 如果後面需要用到深度學習,TensorFlow、YOLO,PyTorch等,包的來源可能不再自己設置的兩個資源路徑之下,所以可能找不到。
- 所以,建議直接多設置幾個源,國內常用的鏡像源(註:可能鏡像源地址有變化,註意甄別)
清華大學鏡像源 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ 阿裡鏡像源 http://mirrors.aliyun.com/pypi/simple/ http://mirrors.aliyun.com/anaconda/pkgs/main http://mirrors.aliyun.com/anaconda/pkgs/free https://mirrors.aliyun.com/anaconda/pkgs/main/ https://mirrors.aliyun.com/anaconda/cloud/conda-forge/ https://mirrors.aliyun.com/anaconda/cloud/bioconda/ 豆瓣鏡像源 http://pypi.douban.com/simple/ Python官方 https://pypi.python.org/simple/
- 值得註意的是:上面設置的兩個源的資源路徑為:
-
刪除已添加的指定鏡像源,例如:
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
-
恢復為預設的鏡像源(即從官網下載包)
conda config --remove-key channels
-
設置搜索時顯示通道地址,如果
C:\Users(用戶)\username\
路徑下沒有.condarc
文件,則需要在cmd命令行執行如下命令conda config --set show_channel_urls yes
-
查看到Anaconda/Miniconda的所有信息,在channel URLs一欄,可以看到添加的鏡像網站
conda info
1.3.2. 方法二:修改 .condarc 文件
- 在
C:\Users(用戶)\username\
路徑下的.condarc
文件,記錄著我們對conda的配置,直接手動創建、編輯該文件是相同的效果。 - 如果
C:\Users(用戶)\username\
路徑下沒有.condarc
文件,則需要在cmd命令行執行如下命令conda config --set show_channel_urls yes
1.3.3. 補充
- 後續在Pycharm中使用conda創建一個新環境時,發現上面的源設置有點問題,使用Pycharm總是無法創建,但在conda命令行中創建又可以。
- 解決,參考文章:
https://www.jianshu.com/p/b1e4f33f975a
- 這裡直接給出相關的設置,複製粘貼到
.condarc
文件中即可channels: - defaults show_channel_urls: true channel_alias: http://mirrors.tuna.tsinghua.edu.cn/anaconda default_channels: - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
1.3.4. 設置臨時鏡像源
- 有時也可能只需要臨時使用某個鏡像源下載某個模塊,則可以臨時指定下載的鏡像源
- 直接指定安裝模塊時使用的鏡像源地址,以opencv為例:
conda install opencv -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
2. conda使用
- 使用前,可以瞭解什麼是虛擬環境?以及如何配置虛擬環境?
- 可參考文章:什麼是虛擬環境?以及如何配置虛擬環境
2.1. 自定義conda創建虛擬環境的預設路徑
- 由於使用conda創建的虛擬環境,預設是保存在C盤下的,隨著後面虛擬環境創建的越多,下載的包越多,則占用的空間越大,所以修改conda創建虛擬環境的預設路徑到其他盤。
conda創建虛擬環境的預設路徑為 C:\Users\your_username\.conda\envs\ conda安裝包的預設路徑為 C:\Users\your_username\.conda\pkgs\ 若不想占用C盤空間,需要修改 conda 虛擬環境的預設路徑 和 安裝包的預設路徑
- 當然如果你的空間足夠大,也可以不用設置。
- 參考文章:修改conda預設envs_dirs和pkgs_dirs
2.1.1. 方法一:命令行方式
- 在Anaconda Prompt 或 cmd 中執行如下命令
- 註:路徑改為你自己想要保存conda虛擬環境的路徑
conda config --add envs_dirs D:\DeveloperTools\Miniconda3\envs conda config --add pkgs_dirs D:\DeveloperTools\Miniconda3\pkgs
- 在Anaconda Prompt 或 cmd 中執行下列語句,查看是否配置成功
conda info #在 envs directories 一欄看到自己設置的虛擬環境路徑 # 或 conda config --show #在 envs_dirs 和 pkgs_dirs 欄都可以看到自己設置的虛擬環境路徑
2.1.2. 方法二:修改.condarc 文件
-
在
C:\Users(用戶)\username\
路徑下的.condarc
文件中添加需要存放conda虛擬環境的路徑envs_dirs: - D:\DeveloperTools\Miniconda3\envs - D:\DeveloperTools\Miniconda3\pkgs
-
按照方法一中的命令,可查看是否配置成功。
2.1.3. 補充:對於 Windows設置未生效的情況
-
對於 Windows11或其他Windows版本,有時候即使
conda info
查看添加的虛擬環境路徑已存在,但是當添加一個新的虛擬環境時,還是下載到了預設的C盤的路徑下。 -
解決辦法:修改自己用於保存conda虛擬環境的文件夾的許可權,以及設置的
envs
和pkgs
文件夾的許可權為:完全控制
-
envs
和pkgs
文件夾同理,許可權也需要設置為:完全控制
2.2. conda命令對python虛擬環境管理
-
查看conda配置的所有虛擬環境,終端中,左邊顯示的
(base)
表示安裝conda時自帶的基礎環境conda env list (或conda info --envs,簡寫:conda info -e) # 說明:結果中星號"*"所在行即為當前所在環境
-
創建新的虛擬環境
# conda create --name your_env_name python版本 例如: conda create --name PyTorch python=3.8 # 安裝一個名為PyTorch的Python虛擬環境,Python版本是3.8(不用管是3.8.x,conda會為我們自動尋找3.8.x中的最新版本) # 在指定文件路徑創建 conda create --prefix=C:/ProgramData/Anaconda3/envs/pytorch python=3.8
- 如果創建虛擬環境時沒有指定Python的版本,那麼預設會安裝與Anaconda / Miniconda版本相同的Python版本,即如果安裝Anaconda第2版,則會自動安裝Python2.x;如果安裝Anaconda第3版,則會自動安裝Python3.x
-
使用指定的某個虛擬環境
# conda activate 虛擬環境名稱 conda activate PyTorch # 激活名稱為 PyTorch 的虛擬環境
-
退出/關閉指定的某個虛擬環境
conda deactivate
-
刪除指定的某個虛擬環境
- 註:不要在所處的當前環境內,刪除當前環境!否則可能會出現異常
# conda env remove --name your_env_name conda env remove --name PyTorch # 或 # conda remove --name your_env_name --all conda remove --name PyTorch --all
-
克隆(複製)一份已有的虛擬環境
- 因為本來沒有給虛擬環境重命名的,所以理論上可以用克隆(複製)後再刪除原來的環境的方式實現重命名
- 但不建議這樣來重命名,因為修改後會有一些路徑上的BUG
# conda create --name new_env_name --clone old_env_name conda create --name Tensorflow --clone PyTorch # 複製名為 PyTorch 的虛擬環境 以此用於創建一個新的名為 Tensorflow 的虛擬環境
2.3. conda常用命令
- 註:在不同的虛擬環境中,查詢包、安裝包、更新包、卸載包都是獨立的。
- 查看包
conda --version #查看系統安裝的conda版本 conda list # 查看當前環境下已安裝的包 conda list --name your_env_name #查看某個指定環境的已安裝包 conda search 庫名 #查找package信息 conda search 庫名 -info #查看某一個模塊的信息,沒有該模塊則無
- 安裝包
conda install package_name #在當前環境中安裝包 conda install package_name=version #在當前環境中安裝指定版本號的包 # 當使用 conda install 無法進行安裝時,可以使用 pip 進行安裝 # 對於 .whl 文件,conda命令似乎不能正確安裝,還是要用pip命令才行
- 更新包
conda update package_name #更新當前環境中的指定包 # 更新多個指定包,則包名以空格隔開,向後排列。例如: conda update pandas numpy matplotlib #即更新pandas、numpy、matplotlib包 conda update --all #更新當前虛擬環境中所有的包 # conda將conda、python等都視為package,因此,完全可以使用conda來管理conda和python的版本 conda update conda #更新conda,保持conda最新 conda update anaconda #更新anaconda conda update python #更新當前虛擬環境下的Python版本,假設當前環境是python 3.8.10,運行後,conda會將python升級為3.8.x系列的當前最新版本
- 卸載包
conda remove package_name #卸載當前虛擬環境中的指定包
到底了