溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python學(xué)3還是2

發(fā)布時間:2020-09-23 12:16:31 來源:億速云 閱讀:120 作者:Leah 欄目:編程語言

python學(xué)3還是2?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

在過去幾年,在編程社區(qū)里有大量關(guān)于到底哪一個python版本才是最值得去學(xué)的討論:是python2還是python3(特別是python2.7與python3.5)。進(jìn)入2019年,很顯然python3已經(jīng)是贏家,深受大量初學(xué)者的歡迎。在這里小編帶你看看python2與python3之間的一些主要詫異?

Python2和Python3的發(fā)展歷史

先從一個簡短的python發(fā)布時間軸開始:

·2000年 Python2.0發(fā)布

·2008年 Python3.0發(fā)布

·2010年 Python2.7發(fā)布

·2019年3月4日 Python2.7.15 (最新版本)

·2019年3月25日 Python3.7.3 (最新版本)

·盡管Python2.7仍然廣泛使用,但是Python3的應(yīng)用正在迅速增長。在2016年有71.9%的項目使用Python2.7, 但是到了2017年它降到63.7%。這表明編程社區(qū)正在轉(zhuǎn)向Python3。

·值得注意的是,Python2將在2020年元旦正式停止官方支持。

·從過去的2018年更新頻率看,Python3發(fā)布了從3.5.5到3.7.2近10個版本,而Python2 只更新了2.7.15一個版本。

Python2和Python3主要差異

在編程風(fēng)格上Python2和Python3有大量差異,這里列舉五個重要方面說明:

(1)Python2是過去,Python3是未來由于在過去10幾年時間里Python2是最受歡迎的版本,所以在大部分軟件公司中仍然大量存在。但是由于越來越多公司開始從Python2遷移到3,因此初學(xué)者可能希望避免花時間在一個已經(jīng)過時的版本上。

(2)Python2和Python3有一些互相不兼容的庫由于Python3代表未來,如今很多開發(fā)人員嚴(yán)格用Python3開發(fā)一些庫,許多老的基于Python2的老開發(fā)包是不向前兼容的。你可以將2.x庫移植到3.x,但這對于初學(xué)者來說可能是比較困難和復(fù)雜的。

(3)Python3有更好的Unicode編碼支持在Python3語法中,默認(rèn)情況下文本字符串是Unicode, 在Python2中,字符串默認(rèn)存儲為ASCII, 如果要在Python2.X中將字符串存儲為Unicode, 則必須加"u"。

str = "中國" # python3寫法
str = u"中國" # python2寫法

這一個變化十分重要,因為Unicode比ASCII更加通用,Unicode字符串可以存儲外語字母、羅馬數(shù)字和數(shù)字、符號和標(biāo)簽符號等,可以為你提供更多的選擇。

(4)Python3改進(jìn)了整數(shù)除法在Python2中,如果你在小數(shù)點后面寫一個沒有任何數(shù)的數(shù)字,它會將你的計算向下舍入到最接近的整數(shù)。例如,如果你要計算5除以2,深入5/2,則由于四舍五入,結(jié)果將為2,你必須把他寫成5.0/2.0才能得到預(yù)期2.5的答案。但是,在Python3中,表達(dá)式5/2得到2.5的預(yù)期結(jié)果,不必要擔(dān)心四舍五入的問題。

print(5/2) # 輸出2, Python2
print(5.0/2.0) # 輸出2.5, Python2
print(5/2) # 輸出2.5, Python3
print(5.0/2.0) # 輸出2.5, Python3

(5)兩個版本有不同的打印語句聲明語法這只是一種語法差異,有些人可能認(rèn)為它很簡單,所以不會影響Python的功能,也就是說,你應(yīng)該知道它仍然是一個巨大明顯的差異。本質(zhì)上說,Python3中,print語句已經(jīng)被print()替代。如果你第一次編程這對你影響不大,如果你之前一直是Python2, 這可能在一段時間里會很不習(xí)慣。

print "hello world" # Python2打印方法
print("hello world") # Python3打印方法

為什么很多公司向python3遷移

正如前面講的,由于遺留原因,大多數(shù)公司仍在使用Python2, 但是越來越多的公司正在使用Python3, 或者開始從2到3進(jìn)行切換。接下來從Instagram為什么Python2從遷移到3來說明。

每個較新版本的Python都在持續(xù)優(yōu)化來獲得更快的運行時間。 但是,沒有人正在努力使Python2.7更快地運行。

作為一個初學(xué)者,我該如何選擇

這其實是一個很簡單的問題,學(xué)習(xí)最新的版本就可以(3.7), Python3中的一些改進(jìn)實際上使初學(xué)者更容易理解,因此這是初學(xué)者學(xué)習(xí)Python的最佳方式。請記住,2020年之后將不再支持Python2.7,因此在這一點上專心致力于學(xué)習(xí)它對大多數(shù)人來說都沒有意義。

什么時候?qū)W習(xí)python2有意義?

以下是你可能需要了解Python2的一些情況:

如果你想成為DevOps工程師并使用Fabric或Ansible等配置管理工具,你可能必須同時使用Python2和3(因為這些庫的某些部分沒有完整的Python3支持)。

如果您的公司擁有用Python 2編寫的遺留代碼,那么你需要學(xué)會使用它。

如果您的項目依賴于某些無法移植到Python3的第三方軟件或庫,你將別無選擇,只能使用Python2。

幸運的是,無論你從哪個版本開始,如果需要,將你的知識轉(zhuǎn)移到另一個版本將相當(dāng)容易。

總結(jié)

Python3是明顯的贏家。 由于Python2將在2020年逐步淘汰,因此大規(guī)模采用Python3是明確的未來發(fā)展方向。對于初學(xué)者來說,從Python開始 - 特別是Python3 - 是快速學(xué)習(xí)編程的好方法。 它是一種多樣化和直觀的語言。此外,Python也是人工智能領(lǐng)域最受歡迎的開發(fā)語言,因此如果你學(xué)習(xí)Python3,你可能會發(fā)現(xiàn)你的職業(yè)前景比以往更加光明。

看完上述內(nèi)容,你們掌握python學(xué)3還是2的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI