python观察日志(part10)--__future__ 模块

网友投稿 278 2022-08-31


python观察日志(part10)--__future__ 模块

学习笔记,有错必纠

​​__future__​​模块

我们利用官方文档学习一下​​__future__​​模块:

To avoid confusing existing tools that analyze import statements and expect to find the modules they’re importing.

To ensure that future statements run under releases prior to 2.1 at least yield runtime exceptions

To document when incompatible changes were introduced, and when they will be — or were — made mandatory. This is a form of executable documentation, and can be inspected programmatically via importing ​​__future__​​ and examining its contents.

所以说,如果某个版本(比如python3.5)中存在某个新的功能特性(比如精确除法),而这个特性和当前版本(比如python2.7)不兼容,也就是它在该版本中不是语言标准,那么我如果想要使用该特性的话,就需要从​​__future__​​模块中导入。

python实现

我们可以利用​​__future__​​ 模块,在python2.X中,像python3.X那样,使用加括号的print,或者使用精确除法。

以下是在python2.7.12交互模式下运行:

>>> print 'Bunny'Bunny>>> 3/21>>> from __future__ import print_function, division>>> print('Huang')Huang>>> 3/21.5

我们可以看到,在我们没有导入模块时,print不用加括号,导入后,python2就可以使用python3中print的特性;同样,当我们没有导入该模块时,​​/​​​操作符执行的是截断除法,当我们导入后,​​/​​执行的是精确除法。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python观察日志(part12)--基于类的深拷贝与浅拷贝
下一篇:SpringBoot配置项目访问路径URL的根路径方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~