日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

Anaconda、conda、pip、virtualenv的區(qū)別

時(shí)間:2023-07-18 09:14:07 類型:python
字號(hào):    

Anaconda、conda、pip、virtualenv的區(qū)別


Anaconda


Anaconda是一個(gè)包含180+的科學(xué)包及其依賴項(xiàng)的發(fā)行版本。其包含的科學(xué)包包括:conda, numpy, scipy, ipython notebook等。

conda

conda是包及其依賴項(xiàng)和環(huán)境的管理工具。

? 適用語(yǔ)言:Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。

? 適用平臺(tái):Windows, macOS, Linux

? 用途:

① 快速安裝、運(yùn)行和升級(jí)包及其依賴項(xiàng)。

② 在計(jì)算機(jī)中便捷地創(chuàng)建、保存、加載和切換環(huán)境。

如果你需要的包要求不同版本的Python,你無(wú)需切換到不同的環(huán)境,因?yàn)閏onda同樣是一個(gè)環(huán)境管理器。僅需要幾條命令,你可以創(chuàng)建一個(gè)完全獨(dú)立的環(huán)境來(lái)運(yùn)行不同的Python版本,同時(shí)繼續(xù)在你常規(guī)的環(huán)境中使用你常用的Python版本


conda為Python項(xiàng)目而創(chuàng)造,但可適用于上述的多種語(yǔ)言。

? conda包和環(huán)境管理器包含于Anaconda的所有版本當(dāng)中。


pip

pip是用于安裝和管理軟件包的包管理器。

? pip編寫(xiě)語(yǔ)言:Python。

? Python中默認(rèn)安裝的版本:

① Python 2.7.9及后續(xù)版本:默認(rèn)安裝,命令為 pip

② Python 3.4及后續(xù)版本:默認(rèn)安裝,命令為 pip3

? pip名稱的由來(lái):pip采用的是遞歸縮寫(xiě)進(jìn)行命名的。其名字被普遍認(rèn)為來(lái)源于2處:

① “Pip installs Packages”(“pip安裝包”)

② “Pip installs Python”(“pip安裝Python”)



 virtualenv

virtualenv是用于創(chuàng)建一個(gè)獨(dú)立的Python環(huán)境的工具。

? 解決問(wèn)題:

  1. 當(dāng)一個(gè)程序需要使用Python 2.7版本,而另一個(gè)程序需要使用Python 3.6版本,如何同時(shí)使用這兩個(gè)程序?如果將所有程序都安裝在系統(tǒng)下的默認(rèn)路徑,如:/usr/lib/python2.7/site-packages,當(dāng)不小心升級(jí)了本不該升級(jí)的程序時(shí),將會(huì)對(duì)其他的程序造成影響。

  2. 如果想要安裝程序并在程序運(yùn)行時(shí)對(duì)其庫(kù)或庫(kù)的版本進(jìn)行修改,都會(huì)導(dǎo)致程序的中斷。

  3. 在共享主機(jī)時(shí),無(wú)法在全局 site-packages 目錄中安裝包。

? virtualenv將會(huì)為它自己的安裝目錄創(chuàng)建一個(gè)環(huán)境,這并不與其他virtualenv環(huán)境共享庫(kù);同時(shí)也可以選擇性地不連接已安裝的全局庫(kù)。



pip 與 conda 比較

→ 依賴項(xiàng)檢查

? pip:

① 不一定會(huì)展示所需其他依賴包。

② 安裝包時(shí)或許會(huì)直接忽略依賴項(xiàng)而安裝,僅在結(jié)果中提示錯(cuò)誤。

? conda:

① 列出所需其他依賴包。

② 安裝包時(shí)自動(dòng)安裝其依賴項(xiàng)。

③ 可以便捷地在包的不同版本中自由切換。


 環(huán)境管理

? pip:維護(hù)多個(gè)環(huán)境難度較大。

? conda:比較方便地在不同環(huán)境之間進(jìn)行切換,環(huán)境管理較為簡(jiǎn)單。


→ 對(duì)系統(tǒng)自帶Python的影響

? pip:在系統(tǒng)自帶Python中包的更新/回退版本/卸載將影響其他程序。

? conda:不會(huì)影響系統(tǒng)自帶Python。



適用語(yǔ)言

? pip:僅適用于Python。

? conda:適用于Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。


⑥ conda與pip、virtualenv的關(guān)系

? conda結(jié)合了pip和virtualenv的功能。


<