您好,登錄后才能下訂單哦!
每門編程語言在發布更新之后,主要版本之間都會發生很大的變化。 在本文中,Vinodh Kumar 通過示例解釋了 Python 2 和 Python 3 之間的一些重大差異,以幫助說明語言的變化。
本教程主要介紹內容:
1、表達式
在 Python 2 中為獲得計算表達式,你會鍵入:
但在 Python 3 中,你會鍵入:
因此,無論我們輸入什么,值都會分配給 2 和 3 中的變量 x。當在 Python 2 中輸入 2*6 時,結果將是 12,這是評估值。
但是,當在 Python 3 中運行相同的程序時,結果是字符串值。 在這種情況下,它看起來像字符串格式的 2*6。
那么,我們如何獲得評估表達式呢? 現在,我們必須使用一個名為 eval 的表達式或函數。 當您在輸入之前編寫 eval 時,它會將表達式轉換為計算值。
具體表達式示例:
在 Python 2 中:
然后輸出:
在 Python 3 中:
然后輸出:
我們可以清楚地看到,他們之間的差異很小。
2、Print 選項
在 Python 2 中,print 是一個不需要括號的語句。 在 Python 3 中,print 是一個函數,值需要用括號括起來。
Python 2
輸入:
會輸出:
Python 3
輸入:
會輸出:
3、Unequal 操作
當我們在 Python 2 中使用 Unequal 運算符時,我們需要使用大于 > 或小于 < 符號。 但是,在 Python 3 中,有一個通用運算符。 感嘆號 ! 和等號 = 用于表示值是否相等。
Python 2 -<> 運算符表示不相等
Python 3 -! 運算符表示不相等
Python 2
輸入:
會輸出:
Python 3
輸入:
會輸出:
4、Range
Range 用于生成數字列表,通常用于迭代 for 循環。
在這里你可以看到 X 等于 Range 10。當我們檢查變量 X 時,它返回了列表類型。 這意味著在 Python 2 中,Range 是列表的類型。當我寫 X 之后,得到一個對象列表,這里是:0 1 2 3 4 5 6 7 8 9。
現在讓我們轉到 Python 3,當我們寫 X 等于 Range 5,這個值就被賦給變量 X;當我們檢查變量 X 的類型時,它會返回一個 Range 對象本身。 這意味著在 Python 3 中,Range 是一個范圍對象本身。
Python 2
輸入:
會輸出:
Python 3
輸入:
會輸出:
5、自動遷移
那么,我們如何自動執行腳本以將代碼從 Python 2 移動到 3?
在這里,我們可以使用 Python 中的 Add 2 Numbers 進行測試。
Python 2
輸入:
會輸出:
所以在這里我們看到它可以在命令行上通過 2to3 轉換為 Python 3 代碼。
Python 提供了自己的工具,名為 2to3.py,它運行了一堆腳本來將你的 Python 2 代碼轉換為 3。雖然它并不完美,但它總體上做得非常出色。轉換任何代碼后,您可以手動修復任何問題。
6、性能問題
此升級中已修復了大多數性能問題! 在比較兩個版本之間的基準時,差異幾乎可以忽略不計。
7、一些主要的內部事務變更
Python 2
Python 3:
總結
以上所述是小編給大家介紹的示例詳解Python3 or Python2 兩者之間的差異,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。