python2和python3的區別

2021-09-24 01:56:43 字數 1484 閱讀 2304

python2和python3的區別:

1、通過input()解析使用者的輸入:(python3中input得到的為str;python2的input的到的為int型,

python2的raw_input得到的為str型別)統一一下:python3中用input,python2中用row_input,都輸入為str;

2、python3中/表示真除,%表示取餘,//表示地板除(結果取整);python2中/表示根據

除數被除數小數點位得到結果,//同樣表示地板除)統一一下:python3中/表示真除,

%表示取餘,//結果取整;python2中帶上小數點/表示真除,%表示取餘,//結果取整

python 2.7.6

3 / 2 = 1

3 // 2 = 1

3 / 2.0 = 1.5

3 // 2.0 = 1.0

python 3.4.1

3 / 2 = 1.5

3 // 2 = 1

3 / 2.0 = 1.5

3 // 2.0 = 1.0

3、 詳解

4、python2中range(1,10,2)會生成數字列表,python3中則:list(range(1,10,2))

5、python2x:unicode 預設2個位元組表示乙個字元  可以在linux 編譯安裝時做調整

python3x:unicode 預設是4個位元組表示乙個字元

python2中預設的字串型別預設是ascii,python3中預設的字串型別是unicode。

版本    python2    python3

位元組字串    str    bytes

文字字串    unicode    str

6、python2中的dict類中的keys、values和items均返回list物件,iterkeys、itervalues和iteritems返回生成器物件。

python3中移除了list、只返回乙個生成器的物件,只保留檢視(生成器),但方法名為:keys、values和items。

7、模組合併

python2中的stringio和cstringio合併為python3中的io

python2中的pickle和cpickle合併為python3中的pickle

python2中的urllib、urllib2和urlparse合併為python3中的urllib

8、重新命名模組

python3    python2

configparser    configparser

filter    itertools.ifilter

input    raw_input

map    itertools.imap

range    xrange

functools.reduce    reduce

socketserver    socketserver

zip    itertools.izip

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...