Python2與Python3的主要區別

區別

編碼

python2中默認編碼爲ASII,而Python3中默認使用的Unicode,這裏指的是在文件和內存裏的存儲方式。

需要注意的是,如果python2文件中用utf-8聲明,加載到內存裏解碼方式也是utf-8,對於window系統而言,其默認的編碼是gbk,所以執行結果還是亂碼。

字符串

python2中字符串是byte類型字符串,python3中字符串是unicode類型字符串。

print

# python2
print '打印'

# python3
print('打印',end='')

python2中print是特殊語句,python3中print是函數,而且新增了end參數。

除法

# python2
>> 5/2
2

# python3
>> 5/2
2.5

python2中整數相除結果爲向下取整的整數,python3中整數相除結果爲浮點數。

異常處理

# python2
raise ValueError,ex

except ValueError ,e

# python3
raise ValueError(ex)

except ValueError as e

python2中異常觸發過程,先創建異常對象,然後傳入參數;python3中直接創建異常對象。

其他模塊名

python2 python3
ConfigParser ConfigParser
itertools.ifilter filter
itertools.imap map
itertools.zip zip
raw_input input
xrange range
reduce functools.reduce
socketServer Socketserver
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章