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基于queue和threading实现多线程下载实例
Oct 08 Python
列举Python中吸引人的一些特性
Apr 09 Python
如何使用python爬取csdn博客访问量
Feb 14 Python
python语音识别实践之百度语音API
Aug 30 Python
Python3爬虫爬取英雄联盟高清桌面壁纸功能示例【基于Scrapy框架】
Dec 05 Python
Python判断一个文件夹内哪些文件是图片的实例
Dec 07 Python
Django中提供的6种缓存方式详解
Aug 05 Python
Python高级特性——详解多维数组切片(Slice)
Nov 26 Python
Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法实例分析
Dec 26 Python
python词云库wordCloud使用方法详解(解决中文乱码)
Feb 17 Python
python实现横向拼接图片
Mar 23 Python
Python xlrd模块导入过程及常用操作
Jun 10 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&MYSQL服务器配置说明
2006/10/09 PHP
main.php
2006/12/09 PHP
通过5个php实例细致说明传值与传引用的区别
2012/08/08 PHP
Smarty变量调节器失效的解决办法
2014/08/20 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
2016/11/25 PHP
PHP+AjaxForm异步带进度条上传文件实例代码
2017/08/14 PHP
php数组和链表的区别总结
2019/09/20 PHP
JS定时器实例
2013/04/17 Javascript
Jqgrid表格随窗口大小改变而改变的简单实例
2013/12/28 Javascript
jquery+javascript编写国籍控件
2015/02/12 Javascript
jQuery仿天猫实现超炫的加入购物车
2015/05/04 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
微信小程序 form组件详解
2016/10/25 Javascript
Vue非父子组件通信详解
2017/06/12 Javascript
React Native中TabBarIOS的简单使用方法示例
2017/10/13 Javascript
javascript实现异形滚动轮播
2019/11/28 Javascript
vue与iframe之间的信息交互的实现
2020/04/08 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
[37:23]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第二局
2016/03/04 DOTA
Python XML RPC服务器端和客户端实例
2014/11/22 Python
python文件的md5加密方法
2016/04/06 Python
浅析Python中的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
Python中easy_install 和 pip 的安装及使用
2017/06/05 Python
python并发编程之线程实例解析
2017/12/27 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
django rest framework vue 实现用户登录详解
2019/07/29 Python
Win10下python 2.7与python 3.7双环境安装教程图解
2019/10/12 Python
为什么要有struct关键字
2012/05/08 面试题
EJB需直接实现它的业务接口或Home接口吗,请简述理由
2016/11/23 面试题
高中生职业生涯规划书
2014/02/24 职场文书
党员岗位承诺口号大全
2014/03/28 职场文书
法人授权委托书
2014/09/16 职场文书
学习走群众路线心得体会
2014/11/05 职场文书
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python