Python2和Python3的區(qū)別
1. print函數(shù)在Python2中,我們可以使用print語句來輸出內(nèi)容。但是在Python3中,print語句被廢棄了,只能使用print函數(shù)來輸出內(nèi)容。2. Unicode編碼在Python2
1. print函數(shù)
在Python2中,我們可以使用print語句來輸出內(nèi)容。但是在Python3中,print語句被廢棄了,只能使用print函數(shù)來輸出內(nèi)容。
2. Unicode編碼
在Python2中,字符串默認(rèn)是ASCII編碼的。如果要支持中文,我們需要更改字符集,并在.py文件頭部添加` -*- coding: utf-8 -*-`這樣的聲明。而在Python3中,字符串默認(rèn)是Unicode(utf-8)編碼的,所以直接支持中文作為標(biāo)識(shí)符,無需額外設(shè)置。
3. 除法運(yùn)算
在Python2中,/除法規(guī)則是整數(shù)相除的結(jié)果是一個(gè)整數(shù),小數(shù)部分會(huì)被忽略掉。如果想得到浮點(diǎn)數(shù)的結(jié)果,需要使用浮點(diǎn)數(shù)進(jìn)行除法運(yùn)算。而在Python3中,/除法不再如此,無論是整數(shù)相除還是浮點(diǎn)數(shù)相除,結(jié)果都會(huì)是浮點(diǎn)數(shù)。
4. xrange和range
在Python3中,不再使用xrange方法,只有range方法。在Python2中,range返回一個(gè)列表,而在Python3中,range返回一個(gè)可迭代對(duì)象。
5. 八進(jìn)制字面量表示
在Python2中,八進(jìn)制數(shù)可以寫成0o777或者0777。而在Python3中,表示八進(jìn)制字面量的方式只有一種,即0o1000。二進(jìn)制數(shù)必須寫成0b111。此外,在Python3中新增了一個(gè)bin()函數(shù),用于將一個(gè)整數(shù)轉(zhuǎn)換成二進(jìn)制字符串。
6. 不等于運(yùn)算符
在Python2中,不等于可以用兩種寫法,即!和<>。而在Python3中,去掉了<>,只保留了!一種寫法。
以上是Python2和Python3之間的一些主要區(qū)別。熟悉這些區(qū)別可以幫助我們更好地使用和遷移Python代碼。