溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python2 與Python3的版本區別實例分析

發布時間:2020-09-23 20:55:54 來源:腳本之家 閱讀:187 作者:隨風行云 欄目:開發技術

本文實例講述了Python2 與Python3的版本區別。分享給大家供大家參考,具體如下:

現在還有些開源模塊還沒有更新到python3 ,不了解版本區別,無法對不合適的地方進行更改。

由于只追求向Python3靠近,所以對于python2的特別用法不探究。

此文不補全所有版本區別,僅作檔案記錄我遇到的版本區別.


print函數:

在 Python 2 中, print 被視為一個語句而不是一個函數

更改:

Python 2中的print語句==>Python 3中的print()函數

Python2 與Python3的版本區別實例分析

Python2 與Python3的版本區別實例分析


input():

python2的raw_input()更新為Python 3 中的input()


整數除法:

更新:

由py2中的舍去小數的除法==》py3中的計算比較精確的除法

如果py3中想要不保留小數,使用  // 運算符

Python2 與Python3的版本區別實例分析

Python2 與Python3的版本區別實例分析

但要注意小數中//運算符的使用,//是返回比實際的商要小的數。

Python2 與Python3的版本區別實例分析


Unicode編碼:

  • 1.Python 2中的字符串基于ASCII
  • 2.Python 3 默認使用 Unicode,Python3中的字符串類型默認是unicode類型的,另外新增了兩個字節類:bytes和bytearrays
  • Byte的使用:
    • str對象轉換成bytes對象可以使用encode()
    • bytes對象轉換成str對象使用decode()
    • Python中對bytes類型的數據帶 b前綴的單引號或雙引號表示:

Python2 與Python3的版本區別實例分析

  • 由于編碼變化還導致了python中網絡編程函數使用的變化,網絡傳輸都是字節流的,Python2的網絡傳輸默認是字節型的,而python3中字符串是Unicode的,所以python3要對數據進行編碼再傳輸。

不等運算符

Python 2.x中不等于有兩種寫法 != 和 <>

Python 3.x中去掉了<>, 只有!=一種寫法

現在仍有一些教程保留著<>的用法!


處理異常:

捕獲異常的語法由 except exception, variable 改為 except exception as variable

Python2 與Python3的版本區別實例分析

python3中將一些異常細化了,新增了不少異常


拋出異常:

更新:

py3使用構造函數拋出異常

raise 異常名, "自定義的異常信息"
raise 異常名("自定義的異常信息")

Python2 與Python3的版本區別實例分析


生成器的迭代:

python2中支持   生成器.next()

更新為

python3中的next(生成器),生成器.__next__()

Python2 與Python3的版本區別實例分析 

關于Python相關內容感興趣的讀者可查看本站專題:《Python函數使用技巧總結》、《Python面向對象程序設計入門與進階教程》、《Python數據結構與算法教程》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女