python2和python3的一些區別

2022-07-30 02:00:20 字數 1158 閱讀 8966

效能:py3.x起始比py2.x效率低,但是py3.x有極大的優化空間,效率正在追趕。

編碼:py3原碼檔案預設utf-8編碼,使得變數名更為廣闊。

語法:1,去除了 <>  ,改用了  != 

2,加入了as和with關鍵字,還有true,false,none

3,整型觸發返回浮點數,整除使用了『//』

4,去除了print語句,加入了print函式

5,去除了raw_input,加入了input()函式

6,新的super(),在繼承父類的時候樂意不再給super()傳引數

7,改變了順序操作符的行為,例如x字串和位元組串:

py2中字串是以8-bit 字串儲存

py3中字串以16-bit unicode字串儲存,現在的字串只有str一種型別

資料型別:

py3中去除了long型別,現在只有一中整型-- int,但它的行為就像2.x版本的long

新增了bytes型別,對應於2.x版本的八位串。str物件和bytes物件可以使用 .encode ()(str ->bytes) or .decode()(bytes -> str)方法相互轉化

物件導向:引入了抽象基類

異常:所有異常都從baseexception繼承,並刪除了stardarderror

py2:

1

try:

2......

3except

excetion, e:

4 ......

py3:

try

: .....

except

exception as e:

......

其他 :

range和xrange的區別:

py2中:

range 函式說明:range( [start,] stop [,step]),根據start與stop指定的範圍及step設定的步長,生成乙個序列。   xrange 函式說明:用法與range完全相同,所不同的是生成的不是乙個陣列,而是乙個生成器

py3:

已經將xrange函式刪除,range函式同py2中的xrange函式用法相同

file類被廢棄:

開啟檔案直接使用   open(path)

python3和python2的區別

1.效能 py3.0執行 pystone benchmark的速度比py2.5慢30 guido認為py3.0有極大的優化空間,在字串和整形操作上可 以取得很好的優化結果。py3.1效能比py2.5慢15 還有很大的提公升空間。2.編碼 py3.x原始碼檔案預設使用utf 8編碼,這就使得以下 是合...

Python2和Python3的比較

python2 python3 print fish print fish unicode 是單獨的 unicode utf 8 字串 b b china byte 和 bytearrays type b type bytes s b.decode 轉化成 string 型別b1 s encode ...

python3和python2的區別

這個星期開始學習python了,因為看的書都是基於python2.x,而且我安裝的是python3.1,所以書上寫的地方好多都不適用於python3.1,特意在google上search了一下3.x和2.x的區別。特此在自己的空間中記錄一下,以備以後查詢方便,也可以分享給想學習python的frie...