利用Anaconda完美解決Python 2與python 3的共存問(wèn)題
前言
現(xiàn)在Python3 被越來(lái)越多的開(kāi)發(fā)者所接受,同時(shí)讓人尷尬的是很多遺留的老系統(tǒng)依舊運(yùn)行在 Python2 的環(huán)境中,因此有時(shí)你不得不同時(shí)在兩個(gè)版本中進(jìn)行開(kāi)發(fā),調(diào)試。
如何在系統(tǒng)中同時(shí)共存 Python2 和 Python3 是開(kāi)發(fā)者不得不面對(duì)的問(wèn)題,一個(gè)利好的消息是,Anaconda 能完美解決Python2 和 Python3 的共存問(wèn)題,而且在 Windows 平臺(tái)經(jīng)常出現(xiàn)安裝依賴包(比如 MySQL-python)失敗的情況也得以解決。
Anaconda 是什么?
Anaconda 是 Python 的一個(gè)發(fā)行版,如果把 Python 比作 Linux,那么 Anancoda 就是 CentOS 或者 Ubuntu。它解決了Python開(kāi)發(fā)者的兩大痛點(diǎn)。
- 第一:提供包管理,功能類似于 pip,Windows 平臺(tái)安裝第三方包經(jīng)常失敗的場(chǎng)景得以解決。
- 第二:提供虛擬環(huán)境管理,功能類似于 virtualenv,解決了多版本Python并存問(wèn)題。
下載 Anaconda安裝包
官網(wǎng)下載地址:https://www.continuum.io/downloads
本地下載地址:
Anaconda3 4.3.1 Python 3.6 for windows 64位: http://www.dhdzp.com/softs/556361.html
Anaconda3 4.3.1 Python 3.6 for windows 32位: http://www.dhdzp.com/softs/556363.html
Anaconda3 4.3.1 Python 3.6 for linux 32位: http://www.dhdzp.com/softs/556380.html
Anaconda3 4.3.1 Python 3.6 for linux 64位: http://www.dhdzp.com/softs/556392.html
我們選擇 Python3.6 版本的安裝包,下載完成后直接安裝,安裝過(guò)程選擇默認(rèn)配置即可,大約需要1.8G的磁盤(pán)空間。
conda 是 Anaconda 下用于包管理和環(huán)境管理的命令行工具,是 pip 和 vitualenv 的組合。安裝成功后 conda 會(huì)默認(rèn)加入到環(huán)境變量中,因此可直接在命令行窗口運(yùn)行 conda 命令
如果你熟悉 virtualenv,那么上手 conda 非常容易,不熟悉 virtulenv 的也沒(méi)關(guān)系,它提供的命令就幾個(gè),非常簡(jiǎn)單。我們可以利用 conda 的虛擬環(huán)境管理功能在 Python2 和 Python3 之間自由切換。
多版本切換
# 基于 python3.6 創(chuàng)建一個(gè)名為test_py3 的環(huán)境 conda create --name test_py3 python=3.6 # 基于 python2.7 創(chuàng)建一個(gè)名為test_py2 的環(huán)境 conda create --name test_py2 python=2.7 # 激活 test 環(huán)境 activate test_py2 # windows source activate test_py2 # linux/mac # 切換到python3 activate test_py3
更多命令,可查看幫助 conda -h
包管理工具
conda 的包管理功能是對(duì) pip 的一種補(bǔ)充,如果當(dāng)前已經(jīng)激活了某個(gè)Python環(huán)境,那么就可以在當(dāng)前環(huán)境開(kāi)始安裝第三方包。
# 安裝 matplotlib conda install matplotlib # 查看已安裝的包 conda list # 包更新 conda update matplotlib # 刪除包 conda remove matplotlib
對(duì)于那些用 pip 無(wú)法安裝成功的模塊你都可以嘗試用 conda 來(lái)安裝,如果用 conda 找不到相應(yīng)的包,當(dāng)然你繼續(xù)選擇 pip 來(lái)安裝包也是沒(méi)問(wèn)題的。
提高下載速度
Anaconda 的鏡像地址默認(rèn)在國(guó)外,用 conda 安裝包的時(shí)候會(huì)很慢,目前可用的國(guó)內(nèi)鏡像源地址是清華大學(xué)提供的。修改 ~/.condarc (Linux/Mac) 或 C:\Users\當(dāng)前用戶名.condarc (Windows) 配置
channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ - defaults show_channel_urls: true
除此之外,你也可以把 pip 的鏡像源地址也換成國(guó)內(nèi)的,豆瓣源速度比較快。修改 ~/.pip/pip.conf (Linux/Mac) 或 C:\Users\當(dāng)前用戶名\pip\pip.ini (Windows) 配置:
[global] trusted-host = pypi.douban.com index-url = http://pypi.douban.com/simple
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Python實(shí)現(xiàn)TOPSIS分析法的示例代碼
TOPSIS法是一種常用的綜合評(píng)價(jià)方法,其能充分利用原始數(shù)據(jù)的信息,其結(jié)果能精確反應(yīng)各評(píng)價(jià)方案之間的差距。本文將利用Python實(shí)現(xiàn)這一方法,感興趣的可以了解一下2023-02-02
python3中_from...import...與import?...之間的區(qū)別詳解(包/模塊)
Python編碼第一步是導(dǎo)入模塊,有時(shí)候用import?***有時(shí)候用from...import,下面這篇文章主要給大家介紹了關(guān)于python3中_from...import...與import?...之間區(qū)別的相關(guān)資料,需要的朋友可以參考下2022-08-08
Python中__new__()方法適應(yīng)及注意事項(xiàng)詳解
這篇文章主要介紹了Python中__new__()方法適應(yīng)及注意事項(xiàng)的相關(guān)資料,new()方法是Python中的一個(gè)特殊構(gòu)造方法,用于在創(chuàng)建對(duì)象之前調(diào)用,并負(fù)責(zé)返回類的新實(shí)例,它與init()方法不同,需要的朋友可以參考下2025-03-03
以SQLite和PySqlite為例來(lái)學(xué)習(xí)Python DB API
本文將以SQLite和PySqlite為例來(lái)學(xué)習(xí)Python DB API,pysqlite是一個(gè)sqlite為python 提供的api接口,它讓一切對(duì)于sqlit的操作都變得異常簡(jiǎn)單2020-02-02
python機(jī)器學(xué)習(xí)邏輯回歸隨機(jī)梯度下降法
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)邏輯回歸隨機(jī)梯度下降法的詳細(xì)講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11
Python統(tǒng)計(jì)學(xué)一數(shù)據(jù)的概括性度量詳解
這篇文章主要介紹了Python統(tǒng)計(jì)學(xué)一數(shù)據(jù)的概括性度量詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
Pandas修改DataFrame列名的兩種方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Pandas修改DataFrame列名的兩種方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Pandas具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03

