conda和cmd介紹
介紹
Conda
-
概述:
- Conda是一個開源包管理系統和環境管理系統,尤其適用于Python和R語言的開發環境。
- 它允許用戶創建獨立的虛擬環境,方便地管理依賴包和軟件版本。
-
特點:
- 環境管理:可以創建、導入、導出和刪除獨立的環境。這對不同項目使用不同依賴版本時非常有用。
- 包管理:支持安裝、更新和卸載包,能夠解決包之間的依賴關系。
- 跨平臺:支持在Windows、Unix和MacOS上運行。
-
優點:
- 避免軟件包版本沖突。
- 簡化科學計算和數據分析中的軟件管理。
- 有大量的預編譯包,方便安裝(如NumPy、Pandas、SciPy等)。
CMD
-
概述:
- CMD(命令提示符)是Windows操作系統的一個命令行解釋器,用于執行操作系統命令和腳本。
- 主要用于進行文件管理、程序執行、系統設置等低級操作。
-
特點:
- 命令行界面:用戶通過輸入文本命令來與操作系統進行交互。
- 操作范圍:可以調用系統命令、批處理文件、運行可執行程序等。
-
優點:
- 強大的文件管理功能。
- 可以執行各類批處理腳本,進行自動化任務。
- 適合具備命令行操作經驗的用戶。
區別
-
用途:
- Conda專注于包和環境管理,特別是在數據科學和機器學習領域。
- CMD用于操作系統級別的任務,如文件管理和系統配置。
-
運行環境:
- Conda在其環境中運行,使用特定的Python和依賴。
- CMD是全系統的命令行界面,不限于特定的編程語言。
界面
conda
cmd
虛擬環境
Bash和創建的虛擬環境
Bash
-
概述:
- Bash(Bourne Again SHell)是一個Unix Shell,廣泛用于Linux和MacOS等操作系統中。
- 它是一種命令行解釋器,允許用戶通過文本命令與操作系統進行交互。
-
功能:
- 命令行操作:執行文件和程序、管理文件系統、運行腳本等。
- 編程功能:支持條件語句、循環、函數等,可以編寫復雜的腳本來自動化任務。
- 環境管理:可以設置和使用環境變量,影響運行在該Shell中的程序的行為。
-
特點:
- 跨平臺(在多種Unix/Linux環境中運行)。
- 基本上用于與操作系統的交互,而不是專注于特定的編程語言環境。
創建的虛擬環境
-
概述:
- 虛擬環境是用于創建隔離的、獨立的Python運行環境的工具,可以用
venv
、virtualenv
、conda
等命令創建。 - 每個虛擬環境都有自己的Python解釋器和依賴包,互不干擾。
- 虛擬環境是用于創建隔離的、獨立的Python運行環境的工具,可以用
-
功能:
- 隔離依賴:可以為每個項目安裝特定版本的包,避免包之間的沖突。
- 簡化部署:便于在不同項目中維護不同的依賴和庫,而不影響全局Python環境。
-
特點:
- 創建的虛擬環境是特定于Python的,與特定的Python版本和依賴包綁定。
- 適用于Python開發者,特別是在進行數據科學、機器學習等項目時
注意
cmd和conda
cmd和conda可以比喻成window下的兩個兄弟,cmd是大哥,conda是二哥,cmd中的python和conda中的python是兩個東西
bash和conda中創建的虛擬環境
bash和conda中創建的虛擬環境可以比喻成父子,bash的python是老爸,conda虛擬環境中的python是兒子,其實在bash中,我們默認下載的python,他就會放在一個全局的環境當中,我們pip下載的庫,也會放在一個全局的環境當中,當全局環境中包下載過多,就會造成一些版本的沖突。我們可以把bash和conda比喻成兩個文件夾,bash的python用的是bash中的庫,conda的python用的是conda的庫,兩者互不干擾。
jupyternotebook
我們會使用pip jupyter notebook下載,但是如果你在cmd中(不是虛擬環境)下載,他就會創建一個jupyter,相當于一個全局jupyter,如果你在conda(不是虛擬環境)中下載,他就會在conda中創建一個jupyter,相當于在conda中的一個全局jupyter。所以我們可以創建一個虛擬環境,虛擬環境中啟動jupyter notebook,會使用虛擬環境中的內核
內核
在Jupyter Notebook中,**內核(Kernel)**是一個重要的概念,它負責執行代碼和處理用戶輸入。具體來說,內核是一個與用戶的代碼執行環境,它連接到Jupyter Notebook,以便處理用戶的代碼請求并返回結果。
虛擬環境的使用
cmd中
創建虛擬環境
pip virtualenv 這個要自己下載
virtualenv -p python解釋器路徑 名字(虛擬環境的名字)# -p python解釋器路徑 # 虛擬環境使用指定版本的python解釋器
# 例:virtualenv -p D:\Python\Python39\python.exe env# --system-site-packages # 指定虛擬環境繼承系統的三方庫
# 添加這個參數:檢索庫的時候,在當前虛擬環境找不到,會到系統的三方庫中查找
# 不加這個參數:檢索庫的時候,只會在當前的虛擬環境中查找
# 例:virtualenv --system-site-packages env# 注意:通過系統python環境創建虛擬環境的時候,并不會將系統python環境中安裝的第三方庫安裝到虛擬環境中
創建虛擬環境
1、創建項目文件夾
2、cmd命令行工具,進入到項目文件夾
3、執行命令:
virtualenv env_name
# 如:virtualenv env
激活虛擬環境
# cmd命令行工具,進入到虛擬環境下的Scripts目錄
# 執行命令:
activate 或者 activate.bat# 執行之后,可以看到cmd命令工具中的路徑前面多了一個標識:(env_name)
# 例:(env) C:\Users\Administrator\Desktop\MyPro02\env\Scripts>
# 此時,就是進入到了虛擬環境中,接下來所有的操作都是在當前虛擬環境中
操作虛擬環境
pip install requests# 如果不激活創建的虛擬環境,庫會被安裝到全局環境;# 激活虛擬環境后,則會安裝在虛擬環境中python test.py# 使用虛擬環境中的python解釋器執行test.py文件# 如果test.py文件中導入了某個包,會優先到虛擬環境中去查找相關的包
退出虛擬環境
# cmd命令行工具,進入到虛擬環境下的Scripts目錄
# 執行命令
deactivate 或者 deactivate.bat# 退出虛擬環境之后,cmd命令工具中的路徑前面的標識(env_name)會消失
刪除虛擬環境
直接刪除虛擬環境的文件夾
conda
conda常用的代碼
conda -V # 查看版本(V是大寫)
conda create -n env_name python=3.9 # 創建python虛擬環境(指定python版本)
conda create -n env_name2 --clone env_name1 # 克隆虛擬環境
conda create -n env_name python=3.9 包名=x.x # 創建虛擬環境的同時安裝指定版本的三方庫
conda create -p /projects/envs/myenv python=3.9 #在指定的路徑下創建虛擬環境conda activate env_name # 切換/激活虛擬環境,Linux系統前面要加source
conda deactivate # 退出虛擬環境conda config --show # 查看虛擬環境默認位置
conda install 包名=version # 在base環境中安裝包
conda install -n env_name 包名 # 在指定虛擬環境安裝包
activate env_name # 激活虛擬環境,Linux系統前面要加source
conda remove -n env_name --all # 移除虛擬環境及所有包
conda remove env_name 包名 # 移除指定虛擬環境中的某個包
conda env list # 查看虛擬環境列表
conda list # 查看base環境包列表