直接引用import __future__为什么会出错?
直接引用import __future__为什么会出错?
直接引用import __future__为什么会出错?
2017-12-15
from __future__ import
读代码的过程中看到的,好奇搜索了一下,其实当在我们调试别人Python代码的过程中经常会遇到一些问题,比如版本不同,代码也会有所改变,比如print函数 Python 2.7版本为 print (“ ”) Python3.0以上版本为 print “ ” 有没有什么解决方法呢。
Python 3.x引入了一些与Python 2不兼容的关键字和特性,在Python 2中,可以通过内置的__future__模块导入这些新内容。如果你希望在Python 2环境下写的代码也可以在Python 3.x中运行,那么建议使用__future__模块。例如,如果希望在Python 2中拥有Python 3.x的整数除法行为,可以通过下面的语句导入相应的模块。
以 from __future__ import print_function 为例:
这是 python 2 的概念,显然 python 3 对于 python2 就是 future了
该句必须治愈文件的头部
指定 file 关键字参数,打印到文件流当然也可以是标准输入输出流
from __future__ import print_functionimport sys
print('error happens!', file=sys.stderr)
这样通过from_future_import模块就可以使在Python2.7环境下的代码也可以在Python3.0以上版本中运行了!
------摘自百度
举报