完美解決 Python2 和 python3 共存

Python3 被愈來愈多的開發者所接受,同時讓人尷尬的是不少遺留的老系統依舊運行在 Python2 的環境中,所以有時你不得不一樣時在兩個版本中進行開發,調試。javascript

如何在系統中同時共存 Python2 和 Python3 是開發者不得不面對的問題,一個利好的消息是,Anaconda 能完美解決Python2 和 Python3 的共存問題,並且在 Windows 平臺常常出現安裝依賴包(好比 MySQL-python)失敗的狀況也得以解決。html

Anaconda 是什麼?

Anaconda 是 Python 的一個發行版,若是把 Python 比做 Linux,那麼 Anancoda 就是 CentOS 或者 Ubuntu。它解決了Python開發者的兩大痛點。java

  • 第一:提供包管理,功能相似於 pip,Windows 平臺安裝第三方包常常失敗的場景得以解決。
  • 第二:提供虛擬環境管理,功能相似於 virtualenv,解決了多版本Python並存問題。

下載 Anaconda

直接在官網下載最新版本的 www.continuum.io/downloads 安裝包, 選擇 Python3.6 版本的安裝包,下載完成後直接安裝,安裝過程選擇默認配置便可,大約須要1.8G的磁盤空間。python

conda 是 Anaconda 下用於包管理和環境管理的命令行工具,是 pip 和 vitualenv 的組合。安裝成功後 conda 會默認加入到環境變量中,所以可直接在命令行窗口運行 conda 命令linux

若是你熟悉 virtualenv,那麼上手 conda 很是容易,不熟悉 virtulenv 的也不要緊,它提供的命令就幾個,很是簡單。咱們能夠利用 conda 的虛擬環境管理功能在 Python2 和 Python3 之間自由切換。shell

多版本切換

# 基於 python3.6 建立一個名爲test_py3 的環境
conda create --name test_py3 python=3.6 

# 基於 python2.7 建立一個名爲test_py2 的環境
conda create --name test_py2 python=2.7

# 激活 test 環境
activate test_py2  # windows
source activate test_py2 # linux/mac

# 切換到python3
activate test_py3複製代碼

更多命令,可查看幫助 conda -h windows

包管理工具

conda 的包管理功能是對 pip 的一種補充,若是當前已經激活了某個Python環境,那麼就能夠在當前環境開始安裝第三方包。python2.7

# 安裝 matplotlib 
conda install matplotlib
# 查看已安裝的包
conda list 
# 包更新
conda update matplotlib
# 刪除包
conda remove matplotlib複製代碼

對於那些用 pip 沒法安裝成功的模塊你均可以嘗試用 conda 來安裝,若是用 conda 找不到相應的包,固然你繼續選擇 pip 來安裝包也是沒問題的。工具

提升下載速度

Anaconda 的鏡像地址默認在國外,用 conda 安裝包的時候會很慢,目前可用的國內鏡像源地址是清華大學提供的。修改 ~/.condarc (Linux/Mac) 或 C:\Users\當前用戶名.condarc (Windows) 配置 url

channels:
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
 - defaults
show_channel_urls: true複製代碼

除此以外,你也能夠把 pip 的鏡像源地址也換成國內的,豆瓣源速度比較快。修改 ~/.pip/pip.conf (Linux/Mac) 或 C:\Users\當前用戶名\pip\pip.ini (Windows) 配置:

[global]
trusted-host =  pypi.douban.com
index-url = http://pypi.douban.com/simple複製代碼

同步發表博客:foofish.net/compatible-…公衆號:Python之禪 (id:VTtalk),分享 Python 等技術乾貨

相關文章
相關標籤/搜索