成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

使用Anaconda實(shí)現(xiàn)Python2和Python3共存及相互轉(zhuǎn)換

Salamander / 1186人閱讀

摘要:按目前的發(fā)展趨勢(shì),未來的主流版為。這里介紹一個(gè)強(qiáng)大的軟件,它實(shí)現(xiàn)和兩個(gè)版本的共存,并且可以相互轉(zhuǎn)換。應(yīng)用程序是包和環(huán)境管理器。另外值得一提的是,并不僅僅管理的工具包,它也能安裝非的包。實(shí)際上,腳本和程序使用的默認(rèn)是附帶的。

前言

初學(xué)Python時(shí),總是被python的兩個(gè)不太兼容的版本搞得頭昏腦脹。按目前的發(fā)展趨勢(shì),python未來的主流版為python3。但是我們經(jīng)常會(huì)遇到一些很有意思代碼使用的是python2版本。于是我們需要同時(shí)擁有python2和python3的運(yùn)行環(huán)境。這里介紹一個(gè)強(qiáng)大的軟件Anaconda,它實(shí)現(xiàn)python2和python3兩個(gè)版本的共存,并且可以相互轉(zhuǎn)換。Anaconda 是一個(gè)用于科學(xué)計(jì)算的 Python 發(fā)行版,支持 Linux, Mac, Windows, 包含了眾多流行的科學(xué)計(jì)算、數(shù)據(jù)分析的 Python 包。

使用Anaconda輕松解決Python2和Python3共存
更新歷史

2018年05月04日 - 初稿

閱讀原文 - https://wsgzao.github.io/post...

擴(kuò)展閱讀

Anaconda - https://anaconda.org/


為什么選擇Anaconda

Anaconda 實(shí)際上是一個(gè)軟件發(fā)行版,它附帶了 conda、Python 和多個(gè)科學(xué)包及其依賴項(xiàng)。應(yīng)用程序 conda 是包和環(huán)境管理器。Anaconda 的下載文件比較大(約 500 MB),因?yàn)樗綆Я?Python 中最常用的數(shù)據(jù)科學(xué)包。如果只需要某些包,或者需要節(jié)省帶寬或存儲(chǔ)空間,也可以使用 Miniconda 這個(gè)較小的發(fā)行版(僅包含 conda 和 Python)。

什么是 Anaconda

Anaconda是專注于數(shù)據(jù)分析的Python發(fā)行版本,包含了conda、Python等多個(gè)科學(xué)包及其依賴項(xiàng)。作為好奇寶寶的你是不是發(fā)現(xiàn)了一個(gè)新名詞?conda,那么你一定會(huì)問 conda 又是什么呢?

什么是 conda
conda 是開源包(packages)和虛擬環(huán)境(environment)的管理系統(tǒng)

packages 管理:?可以使用 conda 來安裝、更新 、卸載工具包 ,并且它更關(guān)注于數(shù)據(jù)科學(xué)相關(guān)的工具包。在安裝 anaconda 時(shí)就預(yù)先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在數(shù)據(jù)分析中常用的包。另外值得一提的是,conda 并不僅僅管理Python的工具包,它也能安裝非python的包。比如在新版的 Anaconda 中就可以安裝R語言的集成開發(fā)環(huán)境 Rstudio。

虛擬環(huán)境管理:?在conda中可以建立多個(gè)虛擬環(huán)境,用于隔離不同項(xiàng)目所需的不同版本的工具包,以防止版本上的沖突。對(duì)糾結(jié)于 Python 版本的同學(xué)們,我們也可以建立 Python2 和 Python3 兩個(gè)環(huán)境,來分別運(yùn)行不同版本的 Python 代碼。

知道?是什么(what)?的同時(shí),我們也需要問一問?為什么(why)。那么,為什么要選擇用Anaconda呢?

Anaconda 的優(yōu)點(diǎn)

Anaconda的優(yōu)點(diǎn)總結(jié)起來就八個(gè)字:省時(shí)省心、分析利器。

省時(shí)省心:?Anaconda通過管理工具包、開發(fā)環(huán)境、Python版本,大大簡(jiǎn)化了你的工作流程。不僅可以方便地安裝、更新、卸載工具包,而且安裝時(shí)能自動(dòng)安裝相應(yīng)的依賴包,同時(shí)還能使用不同的虛擬環(huán)境隔離不同要求的項(xiàng)目。

分析利器:?在?Anaconda?官網(wǎng)中是這么宣傳自己的:適用于企業(yè)級(jí)大數(shù)據(jù)分析的Python工具。其包含了720多個(gè)數(shù)據(jù)科學(xué)相關(guān)的開源包,在數(shù)據(jù)可視化、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等多方面都有涉及。不僅可以做數(shù)據(jù)分析,甚至可以用在大數(shù)據(jù)和人工智能領(lǐng)域。

解決了?是什么?以及?為什么?的問題后,下面讓我們看一下?怎么做(How)。

說明一下conda的設(shè)計(jì)理念——conda將幾乎所有的工具、第三方包都當(dāng)做package對(duì)待,甚至包括python和conda自身!因此,conda打破了包管理與環(huán)境管理的約束,能非常方便地安裝各種版本python、各種package并方便地切換。

Anaconda中的重要組件

Anaconda Navigator?:用于管理工具包和環(huán)境的圖形用戶界面,后續(xù)涉及的眾多管理命令也可以在 Navigator 中手工實(shí)現(xiàn)。

Jupyter notebook?:基于web的交互式計(jì)算環(huán)境,可以編輯易于人們閱讀的文檔,用于展示數(shù)據(jù)分析的過程。

qtconsole?:一個(gè)可執(zhí)行 IPython 的仿終端圖形界面程序,相比 Python Shell 界面,qtconsole 可以直接顯示代碼生成的圖形,實(shí)現(xiàn)多行代碼輸入執(zhí)行,以及內(nèi)置許多有用的功能和函數(shù)。

spyder?:一個(gè)使用Python語言、跨平臺(tái)的、科學(xué)運(yùn)算集成開發(fā)環(huán)境。Spyder的最大優(yōu)點(diǎn)就是模仿MATLAB的“工作空間”。

Conda : Conda的包管理就比較好理解了,這部分功能與pip類似。

安裝Anaconda

Anaconda 可用于 Windows、Mac OS X 和 Linux。可以在官網(wǎng)上找到安裝程序和安裝說明
https://www.anaconda.com/down...

如果計(jì)算機(jī)上已經(jīng)安裝了 Python,這不會(huì)有任何影響。實(shí)際上,腳本和程序使用的默認(rèn) Python 是 Anaconda 附帶的 Python。這里需要注意的是選對(duì)自己操作系統(tǒng)對(duì)應(yīng)的版本。安裝完后打開cmd,輸入conda list可以查看當(dāng)前安裝的內(nèi)容。輸入conda upgrade --all,可以更新默認(rèn)環(huán)境下的所有包。并在提示是否更新的時(shí)候輸入y(Yes)以便讓更新繼續(xù)。初次安裝下的軟件包版本一般都比較老舊,因此提前更新可以避免未來不必要的問題。

本人使用的操作系統(tǒng):Win10,前往anaconda官網(wǎng)下載對(duì)應(yīng)的版本,本人選擇的是Python3.6 + Python 2.7(實(shí)際上下載一個(gè)即可,推薦3.6)

設(shè)置Path變量
默認(rèn)安裝不會(huì)自動(dòng)添加全局變量,如果有需求可以手動(dòng)配置Path,以Anaconda2為例
# 將加入到PATH路徑
D:ProgramsAnaconda2
D:ProgramsAnaconda2Scripts

# 在cmd輸入
python -V

Python 2.7.14 :: Anaconda, Inc.
python2和python3版本轉(zhuǎn)換
在win10環(huán)境下進(jìn)行傻瓜式安裝。當(dāng)安裝完成時(shí),計(jì)算機(jī)便具備了Python3.6的環(huán)境,推薦使用 Anaconda Prompt 進(jìn)入命令行

接下來,在cmd的環(huán)境下,輸入以下命令安裝Python2.7的環(huán)境

conda create -n python27 python=2.7 anaconda

上面的代碼創(chuàng)建了一個(gè)名為python27的python2.7的環(huán)境,最后一個(gè)參數(shù)表示安裝anaconda下python2.7的所有默認(rèn)包,這個(gè)參數(shù)時(shí)可選的。

我們進(jìn)入cmd環(huán)境,現(xiàn)在默認(rèn)的python版本時(shí)python3.6,只需要一行簡(jiǎn)單的代碼就可以轉(zhuǎn)為python2.7的環(huán)境

activate python27

此時(shí)本窗口下的python版本變?yōu)榱藀ython2.7,那么你肯定猜到了恢復(fù)到python3.6的命令

deactivate python27

其實(shí)呢,一般沒有必要恢復(fù)到原環(huán)境。只要打開一個(gè)新的cmd窗口,默認(rèn)的python版本就是python3.6

Anaconda 鏡像
這里使用了清華大學(xué)開源軟件鏡像站tuna提供的資源,在此表示感謝

https://mirrors.tuna.tsinghua...

Anaconda 安裝包可以到以下地址分流下載
https://mirrors.tuna.tsinghua...

因?yàn)锳naconda.org的服務(wù)器在國(guó)外,conda下載的速度經(jīng)常很慢??梢栽O(shè)置國(guó)內(nèi)的鏡像源來加速:

# TUNA 還提供了 Anaconda 倉(cāng)庫(kù)的鏡像,運(yùn)行以下命令即可添加 Anaconda Python 免費(fèi)倉(cāng)庫(kù)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 設(shè)置搜索時(shí)顯示通道地址
conda config --set show_channel_urls yes

# 執(zhí)行完上述命令后,會(huì)生成配置文件記錄著我們對(duì)conda的配置,直接手動(dòng)創(chuàng)建、編輯該文件是相同的效果
# Linux/Mac
~/.condarc
# Windows
C:UsersUSER_NAME.condarc

# 運(yùn)行測(cè)試一下吧
conda install numpy
conda安裝django實(shí)踐
以下操作為 anaconda python3.6 環(huán)境下進(jìn)入Anaconda Prompt安裝django1.11的實(shí)踐過程
# 在python3.6環(huán)境下進(jìn)入Anaconda Prompt創(chuàng)建django1.x專用虛擬環(huán)境
conda create -n django1.x
# 激活專用虛擬環(huán)境
activate django1.x
# 查看conda當(dāng)前django可用版本
conda search django
conda install django==1.11.10
# 切換到虛擬環(huán)境家目錄
cd C:UserswsgzaoAppDataLocalcondacondaenvsdjango1.x
# 創(chuàng)建項(xiàng)目
django-admin.py startproject myweb
# 創(chuàng)建app
python manage.py startapp myapp
# 啟動(dòng)Django中的開發(fā)服務(wù)器
python manage.py runserver
# 幫助文檔
python manage.py -h
# Django命令
python manage.py  [options]
conda常用命令

最新版的conda是從site-packages文件夾中搜索已經(jīng)安裝的包,不依賴于pip,因此可以顯示出通過各種方式安裝的包。conda將conda、python等都視為package,因此完全可以使用conda來管理conda和python的版本

# 列出所有已安裝的包
conda list
# 安裝軟件包,同時(shí)它會(huì)自動(dòng)安裝此軟件包的依賴項(xiàng) 
conda install package_name
# 同時(shí)安裝多個(gè)包
conda install numpy pandas
# 安裝指定版本的包
conda install python=2.7
# 安裝離線包
conda install /package-path/package-filename.tar.bz2
# 卸載包
conda remove package_name
# 更新環(huán)境中的所有已安裝的包
conda update/upgrade --all
# 更新conda,保持conda最新
conda update conda
# 更新anaconda
conda update anaconda
# 更新python
conda update python
# 查看conda安裝信息
conda info
# 查看conda幫助
conda help
# 搜索可以安裝的包
conda search package_name
# 創(chuàng)建conda虛擬環(huán)境
conda create -n env_name
# 在這里,-n env_name 設(shè)置環(huán)境的名稱(-n 是指名稱),而 list of packages 是要安裝在環(huán)境中的包的列表
conda create -n env_name list of packages
# 可以創(chuàng)建具有特定 Python 版本的環(huán)境
conda create -n py2.7.14 python=2.7.14
# 查看conda版本
conda -V

# 進(jìn)入環(huán)境
# linux 下用 
source activate env_name
# windows 下用
activate env_name

# 離開環(huán)境
# linux 下用 
source deactivate
# windows 下用
deactivate

# 列出環(huán)境
conda env list
# 刪除環(huán)境
conda env remove -n env_name
# 導(dǎo)出環(huán)境將包保存為 YAML,輸出環(huán)境中的所有包的名稱(包括 Python 版本)
conda env export > environment.yaml
# 加載環(huán)境
conda env create -f environment.yaml

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41679.html

相關(guān)文章

  • Python多版本切換工具-PyenvvirtualenvAnaconda科學(xué)計(jì)算環(huán)境的配置

    摘要:為了安裝科學(xué)計(jì)算環(huán)境,控制好版本,今天上午總算折騰好了。切換和使用新的虛擬環(huán)境這樣就能切換為這個(gè)版本的虛擬環(huán)境。通過輸入查看現(xiàn)在版本,可以發(fā)現(xiàn)處于虛擬環(huán)境下了。指定包的版本多個(gè)版本并存,尤其是和的并存。下面用創(chuàng)建一個(gè)名叫的版本為的環(huán)境。 為了安裝Anaconda科學(xué)計(jì)算環(huán)境,控制好python版本,今天上午總算折騰好了。 學(xué)習(xí)python有時(shí)希望在python2.7環(huán)境下,有時(shí)希望在...

    rozbo 評(píng)論0 收藏0
  • 寶塔面板,升級(jí)默認(rèn)python2.7為python3.X,并共存!

    摘要:雖然寶塔自帶了管理器,但是這個(gè)玩意并不好用。設(shè)置為默認(rèn)版本的默認(rèn)路徑,在下面。這里也可以看到寶塔的默認(rèn)版本為,需要使用命令才可以看到。此時(shí)的和也已經(jīng)共存。centos7的默認(rèn)python版本為2.7,但是2.7這個(gè)版本太老了,很多童鞋想升級(jí)為高版本。雖然寶塔自帶了python管理器,但是這個(gè)玩意并不好用。此外centos的很多命令是基于py2.7,所以你升級(jí)python,請(qǐng)不要?jiǎng)h除舊版本,新...

    Astrian 評(píng)論0 收藏0
  • Jupyter Notebook之初識(shí)入門

    摘要:所以,應(yīng)該直接了當(dāng)?shù)陌惭b,其中也會(huì)自動(dòng)安裝上,作為其運(yùn)行的。這只是一開始,之后還有里各種找不到外部安裝的的情況。終于,意識(shí)到這些方法都是錯(cuò)誤的思路。這才知道原來是無法識(shí)別。 為什么要用IPython/Jupyter? python里面調(diào)試確實(shí)有點(diǎn)煩惱,尤其是在vim里,想要嘗試一些簡(jiǎn)單的編碼問題,實(shí)在是有點(diǎn)麻煩,不想到命令行模式一行一行執(zhí)行,也不想再新建一個(gè)文件測(cè)試一個(gè)簡(jiǎn)單的功能。 而...

    plus2047 評(píng)論0 收藏0
  • Jupyter Notebook之初識(shí)入門

    摘要:所以,應(yīng)該直接了當(dāng)?shù)陌惭b,其中也會(huì)自動(dòng)安裝上,作為其運(yùn)行的。這只是一開始,之后還有里各種找不到外部安裝的的情況。終于,意識(shí)到這些方法都是錯(cuò)誤的思路。這才知道原來是無法識(shí)別。 為什么要用IPython/Jupyter? python里面調(diào)試確實(shí)有點(diǎn)煩惱,尤其是在vim里,想要嘗試一些簡(jiǎn)單的編碼問題,實(shí)在是有點(diǎn)麻煩,不想到命令行模式一行一行執(zhí)行,也不想再新建一個(gè)文件測(cè)試一個(gè)簡(jiǎn)單的功能。 而...

    fredshare 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<