1:打印時,py2需要可以不需要加括號,py3需要
python2:print('lili'),print'lili'
python3:print('lili')
python3必須加括號
exec語句被python3廢棄,統(tǒng)一使用exec函數(shù)
2:內(nèi)涵
Python2:1,臃腫,源碼的重復(fù)量很多。
2,語法不清晰,摻雜著C,php,Java,的一些陋習(xí)。
Python3:幾乎是重構(gòu)后的源碼,規(guī)范,清晰,優(yōu)美。
3、輸出中文的區(qū)別
python2:要輸出中文需加#-*-encoding:utf-8-*-
Python3:直接搞
4:input不同
python2:raw_input
python3:input統(tǒng)一使用input函數(shù)
5:指定字節(jié)
python2在編譯安裝時,可以通過參數(shù)-----enable-unicode=ucs2或-----enable-unicode=ucs4分別用于指定使用2個字節(jié)、4個字節(jié)表示一個unicode;
python3無法進(jìn)行選擇,默認(rèn)使用ucs4
查看當(dāng)前python中表示unicode字符串時占用的空間:
imporsys
print(sys.maxunicode)
#如果值是65535,則表示使用usc2標(biāo)準(zhǔn),即:2個字節(jié)表示
#如果值是1114111,則表示使用usc4標(biāo)準(zhǔn),即:4個字節(jié)表示
6:
py2:xrange
range
py3:range統(tǒng)一使用range,Python3中range的機(jī)制也進(jìn)行修改并提高了大數(shù)據(jù)集生成效率
7:在包的知識點(diǎn)里
包:一群模塊文件的集合+__init__
區(qū)別:py2:必須有__init__
py3:不是必須的了
8:不相等操作符"<>"被Python3廢棄,統(tǒng)一使用"!="
9:long整數(shù)類型被Python3廢棄,統(tǒng)一使用int
10:迭代器iterator的next()函數(shù)被Python3廢棄,統(tǒng)一使用next(iterator)
11:異常StandardError被Python3廢棄,統(tǒng)一使用Exception
12:字典變量的has_key函數(shù)被Python廢棄,統(tǒng)一使用in關(guān)鍵詞
13:file函數(shù)被Python3廢棄,統(tǒng)一使用open來處理文件,可以通過io.IOBase檢查文件類型
以上內(nèi)容為大家介紹了Python3和Python2的區(qū)別?,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。