Python 2和Python 3有哪些主要區別

2021-06-28 17:47:52 字數 949 閱讀 6852

1樓:于洋

print不再是語句,而是函式,比如原來是 print 'abc' 現在是 print('abc')但是 python2.6+ 可以使用 from __future__ import print_function 來實現相同功能》; 在python 3中,沒有舊式類,只有新式類,也就是說不用再像這樣 class foobar(object): pass 顯式地子類化object但是最好還是加上。

主要區別在於 old-style 是 classtype 型別而 new-style 是 type型別; 原來1/2(兩個整數相除)結果是0,現在是0.5了python 2.2+ 以上都可以使用 from __future__ import division 實現改特性,同時注意 // 取代了之前的 / 運算; 新的字串格式化方法format取代%錯誤,從 python2.

6+ 開始已經在str和unicode中有該方法, 同時 python3依然支援 % 算符; xrange重新命名為range同時更改的還有一系列內建函式及方法, 都返回迭代器物件, 而不是列表或者 元組,比如 filter, map, dict.items 等; !=取代 < > python2 也很少有人用 < > 所以不算什麼修改; long重新命名為int不完全對, python3 徹底廢棄了 long+int 雙整數實現的方法,統一為 int,支援高精度整數運算; except exception,e變成except (exception) as e只有 python2.

5 及以下版本不支援該語法,python2.6 是支援的,不算新東西; exec變成函式類似 print() 的變化,之

2樓:匿名使用者

字串型別變化。

很多舊模組被重新命名。

標準庫新增了一些模組。

yield from語法。

async/await語法。

預設print函式。

Python2和Python3都有什麼區別

1.print不再是語句,而是函式,比如原來是 print abc 現在是636f707962616964757a686964616f31333363383433 print abc 但是 python2.6 可以使用 from future import print function 來實現相同功...

Python 2和Python 3有哪些主要區別

1.print不再是語句,而是函式,比如原來是 print abc 現在是 print abc 但是 python2.6 可以使用 from future import print function 來實現相同功能 2.在python 3中,沒有舊式類,只有新式類,也就是說不用再像這樣 class ...

詳解python2和python3的區別

1.效能 py3.0執行 pystone benchmark的速度比py2.5慢30 guido認為py3.0有極大的優化空間,在字串和整形操作上可 以取得很好的優化結果。py3.1效能比py2.5慢15 還有很大的提升空間。2.編碼 py3.x原始碼檔案預設使用utf 8編碼,這就使得以下 是合法...