用 Anaconda 完美解決 Python2 和 python3 共存問題
Python3 被越來越多的開發者所接受,同時讓人尷尬的是很多遺留的老系統依舊執行在 Python2 的環境中,因此有時你不得不同時在兩個版本中進行開發,除錯。
如何在系統中同時共存 Python2 和 Python3 是開發者不得不面對的問題,一個利好的訊息是,Anaconda 能完美解決Python2 和 Python3 的共存問題,而且在 Windows 平臺經常出現安裝依賴包(比如 MySQL-python)失敗的情況也得以解決。
Anaconda 是什麼?
Anaconda 是 Python 的一個發行版,如果把 Python 比作 Linux,那麼 Anancoda 就是 CentOS 或者 Ubuntu。它解決了Python開發者的兩大痛點。
- 第一:提供包管理,功能類似於 pip,Windows 平臺安裝第三方包經常失敗的場景得以解決。
- 第二:提供虛擬環境管理,功能類似於 virtualenv,解決了多版本Python並存問題。
下載 Anaconda
直接在官網下載最新版本的 https://www.continuum.io/downloads 安裝包, 選擇 Python3.6 版本的安裝包,下載完成後直接安裝,安裝過程選擇預設配置即可,大約需要1.8G的磁碟空間。
conda
是 Anaconda 下用於包管理和環境管理的命令列工具,是 pip 和 vitualenv 的組合。安裝成功後 conda 會預設加入到環境變數中,因此可直接在命令列視窗執行 conda 命令
如果你熟悉 virtualenv,那麼上手 conda 非常容易,不熟悉 virtulenv 的也沒關係,它提供的命令就幾個,非常簡單。我們可以利用 conda 的虛擬環境管理功能在 Python2 和 Python3 之間自由切換。
多版本切換
# 基於 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 # windowssource activate test_py2 # linux/mac # 切換到python3 activate test_py3
更多命令,可檢視幫助 conda -h
包管理工具
conda 的包管理功能是對 pip 的一種補充,如果當前已經激活了某個Python環境,那麼就可以在當前環境開始安裝第三方包。
# 安裝 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) 配置
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
沒想到週末我也在更新吧,下一篇我將繼續寫爬蟲系列。加油ing
關注公眾號「Python之禪」(id:vttalk)獲取最新文章