精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
關于conda和anaconda不可不知的誤解和事實

原文:https://blog.csdn.net/qsir/article/details/79354734

2012年發布的跨平臺包管理軟件conda,是在數據分析界和Numpy和Scipy一樣受歡迎的python工具。但是普通程序員平時只是會使用conda安裝一些第三方包, 對它從哪里來,它是什么,和它要到哪里去所知甚少。今天我們就要講一下關于conda和anaconda不可不知的誤解和事實——conda必知必會的那些事實。

誤解 #1:Conda是python的一個發行版,不是一個包管理器。

事實: Conda是一個包管理器;Anaconda才是一個python發行版。雖然conda是用Anaconda打包的, 但是它們兩個的目標是完全不同的。

軟件發行版是在系統上提前編譯和配置好的軟件包集合, 裝好了后就可以直接用。包管理器是自動化軟件安裝,更新,卸載的一種工具。Conda,有命令”conda install”, “conda update”, “conda remove”, 所以很明顯, conda是包管理器。

再來說說, Anaconda 和 Miniconda. Anaconda發行版會預裝很多pydata生態圈里的軟件,而Miniconda是最小的conda安裝環境, 一個干凈的conda環境。

但是,conda和Anaconda沒有必然關系, 你可以不安裝Anaconda的同時, 使用conda安裝和管理軟件。

誤解 #2: Conda是一個python包管理器

事實:Conda是一個通用的包管理器,當初設計來管理任何語言的包。所以用來管理python包當然也是綽綽有余。

$ conda search –canonical | grep -v ‘py\d\d’

這句命令可以幫你找出不是 pip和virtualenv可以管理的python包,而conda可以管理

誤解 #3: Conda 和 pip 是直接競爭關系

事實:Conda 和 pip 目標并不相同, 只有小部分子集有交集有競爭關系:比如python包的安裝和環境隔離。 

一句話就可以看出區別:

pip可以允許你在任何環境中安裝python包,而conda允許你在conda環境中安裝任何語言包(包括c語言或者python)。

如果我們只是關注python包安裝,conda和pip也是為不同用戶和不同目標定制的。如果你想在一個已有系統快速管理python包,那你應該選擇pip,因為conda應該在conda環境中使用,而pip鼓勵在任何環境中使用 。而如果,你想要讓許多依賴庫一起很好地工作(比如數據分析中的Numpy,scipy,Matplotlib等等)那你就應該使用conda,conda很好地整合了包之間的互相依賴。

誤解 #4: 使用conda首先是不負責任并且會引起分歧的

事實:Conda作者多年來用python標準創造conda,只有在非常清晰合理的時候, 才使用其他工具。

你可能會問,我相信conda是遵循python標準的,但是它們為什么偏偏要撇開pip自己去造一套包管理器呢?為什么他們不直接去pip團隊貢獻想法呢?

事實上,一開始conda那伙人是想在pip社區貢獻想法和代碼的,但是像numpy,scipy這樣對底層c庫有復雜依賴的包管理需求,真的不多,所以社區不接受這樣的不常有的需求。所以,他們只能自己去造conda包管理器了。

誤解 #5: conda不能和virtualenv一起使用,所以它對我的工作沒用

事實上:你可以在virtualenv環境下安裝conda,但是最好用conda自己的環境工具,這樣會和pip有更好的兼容性

你可以在virtualenv里面安裝conda:

  1. $ virtualenv test_conda
  2. $ source test_conda/bin/activate
  3. $ pip install conda
  4. $ conda install numpy
  1. $ virtualenv test_conda
  2.  
  3. $ source test_conda/bin/activate
  4.  
  5. $ pip install conda
  6.  
  7. $ conda install numpy
  1. $ virtualenv test_conda
  2. $ source test_conda/bin/activate
  3. $ pip install conda
  4. $ conda install numpy

也可以在conda中造虛擬環境:

  1. $ conda create -n yourenvname python=x.x anaconda
  2. $ source activate yourenvname
  1. $ conda create -n yourenvname python=x.x anaconda
  2. $ source activate yourenvname
  1. $ conda create -n yourenvname python=x.x anaconda
  2. $ source activate yourenvname

誤解 #6: 現在pip用wheels了,conda沒什么用了

事實:wheels只是解決了conda試圖克服的許多困難中的一個, conda二進制編排還是有很多wheels沒有的優勢 

wheels和conda都解決了預編譯的代碼安裝問題(不僅僅是源代碼安裝)。但是wheel沒有conda的依賴處理能力,wheels只能跟蹤python代碼的依賴關系,conda可以跟蹤很多c代碼的依賴關系,這為許多用numpy和scipy做科學計算優化的科學家省了不少心。

誤解 #7: conda不是開源的;它是被盈利公司掌控的,如果有一天公司想收費了,那你就得付錢

Reality: conda (the package manager and build system) is 100% open-source, and Anaconda (the distribution) is nearly there as well.

Anaconda和conda都是standard BSD license開源標準。如果你還不放心,用pip install conda吧,這是完全開源的。

誤解 #8: Conda 軟件包本身都是閉源的吧?

事實: 雖然conda默認渠道沒有完全開源,但是有一個社區牽頭的conda-forge,它會推動conda的包和發行版完全開源。

誤解 #9: 但是,如果Continuum Analytics公司倒閉,conda就不會存活了吧 ?

事實: conda沒有和Continuum Analytics公司有很多牽扯;公司為社區免費提供支持服務,所有軟件都有負責人,而不是公司全權負責。

誤解 #10: 每個人都應該拋棄(conda | pip)去用(pip | conda) !

事實: pip 和 conda 是為不同目的存在的,我們應該更加關注怎么同時用好這兩個工具,而不是只用一個

 

參考文獻:

https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/

 

其他參考資料:

1、conda 管理多版本python

https://blog.csdn.net/wild46cat/article/details/81638858

2、conda的安裝與使用(最新版)

https://www.jianshu.com/p/edaa744ea47d

 

本人安裝的miniconda自帶python3.7.1,添加python2.7的命令如下圖所示。

  1. (base) E:\>python -V
  2. Python 3.7.1
  3. (base) E:\>conda create -n py27 python=2.7
  4. Solving environment: done
  5. ## Package Plan ##
  6. environment location: E:\miniconda3\envs\py27
  7. added / updated specs:
  8. - python=2.7
  9. The following packages will be downloaded:
  10. package | build
  11. ---------------------------|-----------------
  12. vs2008_runtime-9.0.30729.6161| 0 1.0 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  13. pip-18.1 | py27_1000 1.8 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  14. wheel-0.32.3 | py27_0 51 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  15. vc-9 | 0 824 B https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  16. setuptools-40.6.3 | py27_0 610 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  17. wincertstore-0.2 | py27_1002 13 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  18. python-2.7.15 | h2880e7c_1006 21.0 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  19. certifi-2018.11.29 | py27_1000 145 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  20. ------------------------------------------------------------
  21. Total: 24.6 MB
  22. The following NEW packages will be INSTALLED:
  23. certifi: 2018.11.29-py27_1000 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  24. pip: 18.1-py27_1000 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  25. python: 2.7.15-h2880e7c_1006 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  26. setuptools: 40.6.3-py27_0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  27. vc: 9-0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  28. vs2008_runtime: 9.0.30729.6161-0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  29. wheel: 0.32.3-py27_0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  30. wincertstore: 0.2-py27_1002 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  31. Proceed ([y]/n)? y
  32. Downloading and Extracting Packages
  33. vs2008_runtime-9.0.3 | 1.0 MB | ########################################################################################################## | 100%
  34. pip-18.1 | 1.8 MB | ########################################################################################################## | 100%
  35. wheel-0.32.3 | 51 KB | ########################################################################################################## | 100%
  36. vc-9 | 824 B | ########################################################################################################## | 100%
  37. setuptools-40.6.3 | 610 KB | ########################################################################################################## | 100%
  38. wincertstore-0.2 | 13 KB | ########################################################################################################## | 100%
  39. python-2.7.15 | 21.0 MB | ########################################################################################################## | 100%
  40. certifi-2018.11.29 | 145 KB | ########################################################################################################## | 100%
  41. Preparing transaction: done
  42. Verifying transaction: done
  43. Executing transaction: done
  44. #
  45. # To activate this environment, use
  46. #
  47. # $ conda activate py27
  48. #
  49. # To deactivate an active environment, use
  50. #
  51. # $ conda deactivate
  52. (base) E:\>python -V
  53. Python 3.7.1
  54. (base) E:\>conda activate py27
  55. (py27) E:\>python -V
  56. Python 2.7.15
  57. (py27) E:\>conda deactivate
  58. (base) E:\>python -V
  59. Python 3.7.1
  60. (base) E:\>

 

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【youcans的深度學習 01】安裝環境詳解之 miniconda
python神器
?成功解決raise ImportError(msg) from None
使用Anaconda Python科學計算包 | 流光
淺析三種Anaconda虛擬環境創建方式和第三方包的安裝
Miniconda——搭建Python開發環境的最優解
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 龙山县| 巴中市| 富源县| 中山市| 巫山县| 大连市| 松潘县| 景洪市| 临潭县| 龙泉市| 郎溪县| 郯城县| 奉节县| 韶关市| 双牌县| 辰溪县| 闽清县| 通辽市| 秦皇岛市| 临沧市| 镇远县| 晋宁县| 建水县| 安阳县| 分宜县| 宝山区| 武邑县| 海晏县| 日喀则市| 汶上县| 洞头县| 桦甸市| 任丘市| 东乡族自治县| 乡宁县| 湟源县| 尤溪县| 方山县| 全州县| 岱山县| 会理县|