Python模块future用法原理详解


Posted in Python onJanuary 20, 2020

这篇文章主要介绍了Python模块future用法原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

计算机的知识太多了,很多东西就是一个使用过程中详细积累的过程。最近遇到了一个很久关于future的问题,踩了坑,这里就做个笔记,免得后续再犯类似错误。

 future的作用:把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本中测试一些新版本的特性。说的通俗一点,就是你不用更新python的版本,直接加这个模块,就可以使用python新版本的功能。 下面我们用几个例子来说明它的用法:

python 2.x print不是一个函数,不能使用help. python3.x print是一个函数,可以使用help.这个时候,就可以看一下future的好处了:

代码:

# python2
#from __future__ import absolute_import, division, print_function
#print(3/5)
#print(3.0/5)
#print(3//5)
help(print)

运行结果:

➜ future git:(master) ✗ python future.py
 File "future.py", line 8
  help(print)
       ^
SyntaxError: invalid syntax

报错了,原因就是python2 不支持这个语法。

上面只需要把第二行的注释打开:

# python2
from __future__ import absolute_import, division, print_function
#print(3/5)
#print(3.0/5)
#print(3//5)
help(print)

结果如下,就对了:

Help on built-in function print in module __builtin__:

print(...)
  print(value, ..., sep=' ', end='\n', file=sys.stdout)
  
  Prints the values to a stream, or to sys.stdout by default.
  Optional keyword arguments:
  file: a file-like object (stream); defaults to the current sys.stdout.
  sep: string inserted between values, default a space.
  end: string appended after the last value, default a newline.

另外一个例子:是关于除法的:

# python2
#from __future__ import absolute_import, division, print_function

print(3/5)
print(3.0/5)
print(3//5)
#help(print)

结果:

➜ future git:(master) ✗ python future.py
0.6

把编译宏打开,运算结果:

➜ future git:(master) ✗ python future.py
0.6
0.6

看看,python3.x的语法可以使用了。

有了这两个例子,估计你对future的用法就清晰了吧。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中itertools模块用法详解
Sep 25 Python
Python HTMLParser模块解析html获取url实例
Apr 08 Python
Python实现的飞速中文网小说下载脚本
Apr 23 Python
python 环境变量和import模块导入方法(详解)
Jul 11 Python
python 实现数组list 添加、修改、删除的方法
Apr 04 Python
对Python3 解析html的几种操作方式小结
Feb 16 Python
python Django里CSRF 对应策略详解
Aug 05 Python
Flask框架学习笔记之使用Flask实现表单开发详解
Aug 12 Python
numpy 返回函数的上三角矩阵实例
Nov 25 Python
python解析命令行参数的三种方法详解
Nov 29 Python
Python 使用 PyQt5 开发的关机小工具分享
Jul 16 Python
Python中对象的比较操作==和is区别详析
Feb 12 Python
使用Tensorflow将自己的数据分割成batch训练实例
Jan 20 #Python
Python JSON编解码方式原理详解
Jan 20 #Python
从训练好的tensorflow模型中打印训练变量实例
Jan 20 #Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
Jan 20 #Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 #Python
Python timer定时器两种常用方法解析
Jan 20 #Python
tensorflow 固定部分参数训练,只训练部分参数的实例
Jan 20 #Python
You might like
php date与gmdate的获取日期的区别
2010/02/08 PHP
php实现以只读方式打开文件的方法
2015/03/16 PHP
php实现的简单中文验证码功能示例
2017/01/03 PHP
php7基于递归实现删除空文件夹的方法示例
2017/06/15 PHP
[原创]PHP获取数组表示的路径方法分析【数组转字符串】
2017/09/01 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
javascript与asp.net(c#)互相调用方法
2009/12/13 Javascript
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
写给想学习Javascript的朋友一点学习经验小结
2010/11/23 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
js中substring和substr两者区别和使用方法
2015/11/09 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
JavaScript动态数量的文件上传控件
2016/11/18 Javascript
详解Angularjs 如何自定义Img的ng-load 事件
2017/02/15 Javascript
JavaScript 九种跨域方式实现原理
2019/02/11 Javascript
详解微信小程序框架wepy踩坑记录(与vue对比)
2019/03/12 Javascript
vue实现滑动超出指定距离回顶部功能
2019/07/31 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
JavaScript eval()函数定义及使用方法详解
2020/07/07 Javascript
JS轮播图的实现方法2
2020/08/25 Javascript
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
Python通过递归遍历出集合中所有元素的方法
2015/02/25 Python
python判断一个集合是否为另一个集合的子集方法
2018/05/04 Python
解决Python 爬虫URL中存在中文或特殊符号无法请求的问题
2018/05/11 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
浅谈Python在pycharm中的调试(debug)
2018/11/29 Python
python读取文件名并改名字的实例
2019/01/07 Python
美国木工工具和用品商店:Woodcraft
2019/10/30 全球购物
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
工作保证书范文
2014/04/29 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
2015年秋季小学开学典礼主持词
2015/07/16 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python
浅谈Python数学建模之整数规划
2021/06/23 Python