Python 2 博艺堂老虎机print 'Python'

2019-03-08 13:51| 发布者: | 查看: |

许多Python初学者都邑 问:我应该学习哪个版本的Python。对于这个问题,博艺堂老虎机,我的回复通常是“先选择一个最适合你的Python教程,教程中使用哪个版本的Python,你就用那个版本。等学得差不多了,再来研究不合 版本之间的差别 ”。

但如果想要用Python开发一个新项目,那么该如何选择Python版本呢?我可以负责任的说,年夜 部分 Python库都同时支持Python 2.7.x和3.x版本的,所以岂论 选择哪个版本都是可以的。但为了在使用Python时避开某些版本中一些常见的陷阱,或需要移植某个Python项目时,依然有需要 了解一下Python两个常见版本之间的主要区别。

目录 __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  

(来源: )

示例:

from platform import python_version print函数

[]

虽然print语法是Python 3中一个很小的修改 ,且应该已经广为人知,但依然值得提一下:Python 2中的print语句被Python 3中的print()函数取代,这意味着在Python 3中必须 用括号将需要输出的对象括起来。

在Python 2中使用额外的括号也是可以的。但反过来在Python 3中想以Python2的形式不带括号挪用 print函数时,会触发SyntaxError。

Python 2

print 'Python', python_version() print 'Hello, World!' print('Hello, World!') print "text", ; print 'print more text on the same line' Python 2.7.6 Hello, World! Hello, World! text print more text on the same line

Python 3

print('Python', python_version()) print('Hello, World!') print("some text,", end="") print(' print more text on the same line') Python 3.4.1 Hello, World! some text, print more text on the same line print 'Hello, World!' File "<ipython-input-3-139a7c5835bd>", line 1 print 'Hello, World!' ^ SyntaxError: invalid syntax

注意:

在Python中,带不带括号输出”Hello World”都很正常。但如果在圆括号中同时输出多个对象时,就会创建 一个元组,这是因为在Python 2中,print是一个语句,而不是函数挪用 。

print 'Python', python_version() print('a', 'b') print 'a', 'b' Python 2.7.7 ('a', 'b') a b 整数除法

[]

由于人们经常 会疏忽 Python 3在整数除法上的修改 (写错了也不会触发Syntax Error),所以在移植代码或在Python 2中执行Python 3的代码时,需要特别注意这个修改 。

所以,我照样 会在Python 3的脚本中测验考试 用float(3)/2或 3/2.0取代 3/2,以此来避免代码在Python 2情况 下可能导致的毛病 (或与之相反,在Python 2脚本中用from __future__ import division来使用Python 3的除法)。

Python 2

print 'Python', python_version() print '3 / 2 =', 3 / 2 print '3 // 2 =', 3 // 2 print '3 / 2.0 =', 3 / 2.0 print '3 // 2.0 =', 3 // 2.0 Python 2.7.6 3 / 2 = 1 3 // 2 = 1 3 / 2.0 = 1.5 3 // 2.0 = 1.0

Python 3

print('Python', python_version()) print('3 / 2 =', 3 / 2) print('3 // 2 =', 3 // 2) print('3 / 2.0 =', 3 / 2.0) print('3 // 2.0 =', 3 // 2.0) Python 3.4.1 3 / 2 = 1.5 3 // 2 = 1 3 / 2.0 = 1.5 3 // 2.0 = 1.0 Unicode

[]

Python 2有基于ASCII的str()类型,其可通过零丁 的unicode()函数转成unicode类型,但没有byte类型。

而在Python 3中,终于有了Unicode(utf-8)字符串,以及两个字节类:bytes和bytearrays。

<
>
XXX娱乐平台成立于2014年,老虎机是一家专注用户体验设计开发与互联网品牌建设的设计公司,百家乐创立至今为2000多位客户提供了创新与专业的设计方案。设计服务范围包括:交互原型设计、产品视觉设计、网站设计与开发建设、移动及软件产品界面设计、图标设计、品牌及平面设计等。

联系我们

博艺堂老虎机_博艺堂老虎机客户端

博艺堂老虎机_博艺堂老虎机客户端(服务时间:9:00-18:00)

博艺堂老虎机_博艺堂老虎机客户端

在线咨询 官方微信官方微信

部门热线

前   台:博艺堂老虎机_博艺堂老虎机客户端
业务部:博艺堂老虎机_博艺堂老虎机客户端
客服部:博艺堂老虎机_博艺堂老虎机客户端
技术部:博艺堂老虎机_博艺堂老虎机客户端
人事部:博艺堂老虎机_博艺堂老虎机客户端

网站建设 微信开发 售后服务 咨询电话博艺堂老虎机_博艺堂老虎机客户端 返回顶部
返回顶部