我们在读代码的时候,总是会看到代码开头会加上from __future__ import *这样的语句。这样的做法的作用就是将新版本的特性引进当前版本中,也就是说我们可以在当前版本使用新版本的一些特性。

例如,在python2.x和python3.x中print的标准写法分别是,

# python 2.x
print "Hello World"# python 3.x
print("Hello World")

如果你想用python2.x体验python3.x的写法,就可以使用from __future__ import print_function来实现,

# python 2.x
from __future__ import print_function
print("Hello World")

而这时候如果再使用原来python2.x的标准写法就会报错,

# python 2.x
from __future__ import print_function
print "Hello World">>> print "Hello World"File "<stdin>", line 1print "Hello World"^
SyntaxError: invalid syntax

除了print函数,__future__模块还有很多其他功能,

1. 整数除法

# python 2.x
5/2
>>> 2from __future__ import division
5/2
>>> 2.5

2. with 用法

# python 2.x
try:with open('test.txt', 'w') as f:f.write('Hello World')
finally:f.close()# 用with替代上述异常检测代码:
from __future__ import with_statement
with open('test.txt', 'w') as f:f.write('Hi there!')

3. 绝对引入(absolute_import)

绝对引入主要是针对python2.4及之前的版本的,这些版本在引入某一个.py文件时,会首先从当前目录下查找是否有该文件。如果有,则优先引用当前包内的文件。而如果我们想引用python自带的.py文件时,则需要使用,

from __future__ import absolute_import

python中 from __future__ import * 的作用相关推荐

  1. python 中if __name__ = '__main__' 的作用

    python 中if __name__ = '__main__' 的作用 前言 首先我们要知道在python里面万物皆对象,模块也是对象,并且所有的模块都有一个内置属性 __name__. 一个模块的 ...

  2. 介绍Python中的__future__模块

    这篇文章主要介绍了介绍Python中的__future__模块,__future__模块使得在Python2.x的版本下能够兼容更多的Python3.x的特性,需要的朋友可以参考下 Python的每个 ...

  3. python的用途实例-python中pass语句意义与作用(实例分析)

    想必大家都是刚刚才开始接触python这门语言的,今天这篇文章就来带大家来了解一下python这门语言之中常常会用到的一个语句pass语句.想必大家都很好奇python中pass作用是什么,接下来我就 ...

  4. python if else语句例子,python 中if else 语句的作用及示例代码

    引入:if-else的作用,满足一个条件做什么,否则做什么. if-else语句语法结构 if 判断条件: 要执行的代码 else: 要执行的代码 判断条件:一般为关系表达式或bool类型的值 执行过 ...

  5. Python中__init__方法有什么作用

    Python中__init__方法有什么作用 当使用类名()的方法去创建对象的时候 python解释器会自动调用__init__方法 因此可以在__init__方法中做一些初始化的设定 在每次创建新对 ...

  6. python中的__future__模块

    本文章转载自:https://www.cnblogs.com/ksedz/p/3190208.html 作用 future__模块提供某些将要引入的特性 2.7.5的__future 基本上是pyth ...

  7. 关于python 中的__future__模块

    Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了. 具体说来就是,某个版本中出现了某个 ...

  8. python中文件读写位置的作用-python配置文件的读写

    1. 配置文件configuration file python中的配置文件有.conf..ini..cfg..txt等多种,其中.ini最常见 .ini文件是Initialization File的 ...

  9. python中必须使用import引入模块_Python之import方法引入模块详解

    在python用import或者from-import或者from-import-as-来导入相应的模块,作用和使用方法与C语言的include头文件类似.其实就是引入某些成熟的函数库和成熟的方法,避 ...

最新文章

  1. 如何在linux下解压缩rar格式的文件压缩包
  2. SAP应用搜索分页的实现原理
  3. Linux 内核源代码的目录结构
  4. jzoj1758-过河【dp】
  5. Spring Cache 实战:兼容所有缓存中间件!
  6. cmake gui安装教程_cmake安装与使用
  7. 第三章 文件过滤及内容编辑处理命令
  8. 6.1 ELMo数学理解
  9. 千兆8光8电宽温环网工业以太网交换机8光8电全千兆二层管理型宽温工业级环网交换机 光纤自愈环网工业交换机
  10. H3C-H3CNE 华三网络工程师从入门到精通 自学视频课程[肖哥]-肖宗鹏-专题视频课程...
  11. 玩转代码|简单分析如何获取小程序的t值
  12. 【python】52周存钱法
  13. 如何做一份漂亮的年终总结报告?教你5个实用套路
  14. ROS订阅/cmd_vel话题,转化成移动机器人左右轮的转速
  15. 微信小程序如何修改单页面背景色
  16. Blender 插件开发 将object设置成bpy.context.object
  17. 受伤的皇后(八皇后问题)
  18. pygame-KidsCanCode系列jumpy-part5-屏幕滚动
  19. jquery获取元素四种方式。
  20. 二、Git本地仓库基本操作——创建Git仓库、提交更新或删除文件

热门文章

  1. debian查询端口进程_Linux查看端口、进程情况
  2. 上行短信验证码服务可以作为106短信验证码的补充
  3. Windows创建网络映射命令
  4. 华为平板鸿蒙,华为新平板用高通骁龙870,运行鸿蒙2.0
  5. html歌曲朋友圈,千万不要在深夜打开朋友圈好友分享的歌曲
  6. “输入/输出(I/O)系统”学习提纲
  7. 使用MapReduce实现WordCount
  8. HTML中图片的路径
  9. 运动性能强的蓝牙耳机,四款运动蓝牙耳机
  10. 首次使用requests库抓取代码