您的位置:首页 > 编程语言 > Python开发

Python: __future__模块

2013-06-26 21:45 253 查看
Python每个新的版本出来都会有一些新的特性或者对当前新特性进行增强,但是某些变化很可能会影响到当前版本的功能。为了让使用Python的同胞们为新的特性做好准备,Python提供了__future__模块。

我们可以通过 from __future__ import <featureName>  导入__future__模块中的新特性。

下面我就用Python 2.6做例子,简单说下__future__的结构

我们找到安装目录下__future__.py文件,可以看到每个feature 都有三个参数,如division:

[python] view plaincopy

division = _Feature((2, 2, 0, "alpha", 2),

(3, 0, 0, "alpha", 0),

CO_FUTURE_DIVISION)

上面division的新特性就是为整数相除得出更精确的值,在python2.6版本中,如果print 10/3. output为3。但是如果from __future__ import division之后再print 10/3,则会输出3.33333333333。

第一个参数optionalReleases: division的OptionalReleases为2.2.0 , 表示division的新特性在2.2.0版本已经具备了,但是并不是默认就可以使用的,我们必须要在导入__future__模块中该功能后才能使用。

第二个参数MandatoryReleases:division的MandatoryReleases为3.0.0,这表示division的新特性已经成功3.0.0版本的一部分了,我们不需要使用导入__future__模块中的division就可以使用division的新功能了。如果MandatoryReleases参数为None表示该新特性被废除了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: