以下是Python2和Python3中的一些語法差異,有需要的小伙伴可以學習下。
print語句
在Python2里,print是一個語句。無論你想輸出什么,只要將它們放在print關鍵字后邊就可以。在Python3里,print()是一個函數。就像其他的函數一樣,print()需要你將想要輸出的東西作為參數傳給它。
Unicode字符串
Python2有兩種字符串類型:Unicode字符串和非Unicode字符串。Python3只有一種類型:Unicode字符串(Unicodestrings)。
Python2里的Unicode字符串在Python3里即普通字符串,因為在Python3里字符串總是Unicode形式的。Unicode原始字符串(rawstring)(使用這種字符串,Python不會自動轉義反斜線"\")也被替換為普通的字符串,因為在Python3里,所有原始字符串都是以Unicode編碼的。
全局函數unicode()
Python2有兩個全局函數可以把對象強制轉換成字符串:unicode()把對象轉換成Unicode字符串,還有str()把對象轉換為非Unicode字符串。Python3只有一種字符串類型,Unicode字符串,所以str()函數即可完成所有的功能。(unicode()函數在Python3里不再存在了。)
long長整型
Python2有為非浮點數準備的int和long類型。int類型的值不能超過sys.maxint,而且這個值是平臺相關的。可以通過在數字的末尾附上一個L來定義長整型,顯然,它比int類型表示的數字范圍更大。在Python3里,只有一種整數類型int,大多數情況下,它很像Python2里的長整型。由于已經不存在兩種類型的整數,所以就沒有必要使用特殊的語法去區別他們。
<>比較運算符#
Python2支持<>作為!=的同義詞。Python3只支持!=,不再支持<>了。當然,區別不僅僅是這些,這里僅列出了一小部分,更多語法差異還需要自行查找學習。
以上內容為大家介紹了python培訓之python2和3語法區別,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注千鋒教育。http://www.dietsnews.net/