效能: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:
1try:
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...