国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python2與Python3的區別詳解

2020-02-15 21:18:44
字體:
來源:轉載
供稿:網友

許多Python初學者都會問:我應該學習哪個版本的Python。對于這個問題,我的回答通常是“先選擇一個最適合你的Python教程,教程中使用哪個版本的Python,你就用那個版本。等學得差不多了,再來研究不同版本之間的差別”。

但如果想要用Python開發一個新項目,那么該如何選擇Python版本呢?我可以負責任的說,大部分Python庫都同時支持Python 2.7.x和3.x版本的,所以不論選擇哪個版本都是可以的。但為了在使用Python時避開某些版本中一些常見的陷阱,或需要移植某個Python項目時,依然有必要了解一下Python兩個常見版本之間的主要區別。

本節內容

使用__future__模塊 print函數 整數除法 Unicode xrange 觸發異常 處理異常 next()函數和.next()方法 For循環變量與全局命名空間泄漏 比較無序類型 使用input()解析輸入內容 返回可迭代對象,而不是列表

一、__future__模塊

Python 3.x引入了一些與Python 2不兼容的關鍵字和特性,在Python 2中,可以通過內置的__future__模塊導入這些新內容。如果你希望在Python 2環境下寫的代碼也可以在Python 3.x中運行,那么建議使用__future__模塊。例如,如果希望在Python 2中擁有Python 3.x的整數除法行為,可以通過下面的語句導入相應的模塊。

from __future__ import division

下表列出了__future__中其他可導入的特性:

特性 可選版本 強制版本 效果
nested_scopes 2.1.0b1 2.2 PEP 227:
Statically Nested Scopes
generators 2.2.0a1 2.3 PEP 255:
Simple Generators
division 2.2.0a2 3.0 PEP 238:
Changing the Division Operator
absolute_import 2.5.0a1 3.0 PEP 328:
Imports: Multi-Line and Absolute/Relative
with_statement 2.5.0a1 2.6 PEP 343:
The “with” Statement
print_function 2.6.0a2 3.0 PEP 3105:
Make print a function
unicode_literals 2.6.0a2 3.0 PEP 3112:
Bytes literals in Python 3000

(來源: https://docs.python.org/2/library/future.html)

示例:

from platform import python_version

二、print函數

雖然print語法是Python 3中一個很小的改動,且應該已經廣為人知,但依然值得提一下:Python 2中的print語句被Python 3中的print()函數取代,這意味著在Python 3中必須用括號將需要輸出的對象括起來。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 都江堰市| 通许县| 静海县| 德格县| 莒南县| 东台市| 广安市| 久治县| 贵定县| 宁陵县| 上杭县| 开原市| 富裕县| 武乡县| 永德县| 新建县| 绵阳市| 四平市| 西城区| 扶沟县| 彭州市| 柞水县| 和平区| 江川县| 淳化县| 洛浦县| 兴山县| 新营市| 化隆| 嘉义市| 渭南市| 揭西县| 仁寿县| 祁门县| 黄骅市| 綦江县| 墨脱县| 凉山| 舟山市| 随州市| 荔浦县|