python3和2的區別

2021-09-07 13:54:22 字數 1312 閱讀 3123

1.print函式

python2中的print語句,被python3中的print()函式取代。

print 'hello world'

執行結果:

python2中同時輸出多個物件時,會建立乙個元組,因為python2中,print是乙個語句,而不是函式呼叫。

2.整數除法

python2

print

'3/2=

',3/2

print

'3//2=

',3//2

print

'3/2.0=

',3/2.0

print

'3',3

執行結果:

3.生成器next()

python3中,g.next()被重新命名為g.__next__(),可以使用next(g)來執行。

4.閉包__closure__

閉包函式會比普通函式多乙個__closure__屬性,裡面定義了乙個元組用來存放所有的cell物件,每個cell物件儲存了這個閉包中對應的外部變數

python2中使用func_closure,python3中為__closure__

def outer():

x = 1

def inner():

print(x)

return inner

result = outer()

print(result.__closure__)

執行結果:

(,)5.dict的items替代python2中的iteritems

6.

python3和python2的區別

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

python3和python2的區別

這個星期開始學習python了,因為看的書都是基於python2.x,而且我安裝的是python3.1,所以書上寫的地方好多都不適用於python3.1,特意在google上search了一下3.x和2.x的區別。特此在自己的空間中記錄一下,以備以後查詢方便,也可以分享給想學習python的frie...

Python2和Python3的區別

1.輸入輸出函式 1 print python2 中print是乙個語句,後直接跟要列印的內容 print hello world hello world python3 中的print是乙個函式,被列印內容應作為引數傳入 print hello world hello world 2 輸入函式 p...