from __future__ import division

导入python未来支持的语言特征division(精确除法),当我们没有在程序中导入该特征时,"/"操作符执行的是截断除法(Truncating Division),当我们导入精确除法之后,"/"执行的是精确除法,如下所示:

---------------------------------------------------------------------------------------------

>>> 3/4

0

>>> from __future__ import division

>>> 3/4

0.75

--------------------------------------------------------------------------------------------

导入精确除法后,若要执行截断除法,可以使用"//"操作符:

--------------------------------------------------------------------------------------------

>>> 3//4

0

--------------------------------------------------------------------------------------------

一些将来特征如下:

feature optional in mandatory in effect
nested_scopes 2.1.0b1 2.2 PEP 227Statically Nested Scopes
generators 2.2.0a1 2.3 PEP 255Simple Generators
division 2.2.0a2 3.0 PEP 238Changing the Division Operator
absolute_import 2.5.0a1 2.7 PEP 328Imports: Multi-Line and Absolute/Relative
with_statement 2.5.0a1 2.6 PEP 343The “with” Statement
print_function 2.6.0a2 3.0 PEP 3105Make print a function
unicode_literals 2.6.0a2 3.0 PEP 3112Bytes literals in Python 3000
PEP:Python Enhancement Proposals
可以在这个地方找到很多PEP:http://www.python.org/dev/peps/ 里面还能看到许多提议的动机
----------------------------------------------------------------------------nested_scopes: 改变名空间的搜索过程
generators:使用生成器.能够产生能保存当前状态的函数.
division:精确的除法
absolute_import:包含绝对路径.方便include
with_statement:安全的打开文件
 
时间: 2024-10-22 11:05:08

from __future__ import division的相关文章

python from __future__ import division

1.在python2 中导入未来的支持的语言特征中division(精确除法),即from __future__ import division ,当我们在程序中没有导入该特征时,"/"操作符执行的只能是整除,也就是取整数,只有当我们导入division(精确算法)以后,"/"执行的才是精确算法. 2.但是在python3中已经支持了精确算法,所以无需再导入division(精确算法): 原文地址:https://www.cnblogs.com/feiquan/p/

使用from __future__ import unicode_literals时要注意的问题

add by zhj: 在Python中有些库的接口要求参数必须是str类型字符串,有些接口要求参数必须是unicode类型字符串.对于str类型的字符串,调用len()和遍历时,其实都是以字节为单位的,这个太坑爹了,同一个字符使用不同的编码格式,长度往往是不同的.对unicode类型的字符串调用len()和遍历才是以字符为单位,这是我们所要的.另外,Django,Django REST framework的接口都是返回unicode类型的字符串.为了统一,我个人建议使用from __futur

from __future__ import print_function

1.在python2.x的环境是使用下面语句,则第二句语法检查通过,第三句语法检查失败 1 from __future__ import print_function 2 priint('good') 3 print 'bad' 2.Python提供了__future__模块,把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本中测试一些新版本的特性 参考:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb4931821

from __future__ import print_function的使用

1.作用:把下一个新版本的特性导入到当前版本,就可以在当前版本中测试一些新版本的语法特性,例如在python2的环境下加入这一句可以测试python3的输出语法 2.使用方式:置于程序的第一行 3.示例: 不加from __future__ import print_function,在python2的环境下分别print"good"和print("good") 加from __future__ import print_function,在python2的环境下分

from __future__ import print_function的作用

阅读代码的时候会看到下面语句: from __future__ import print_function 该语句是python2的概念,那么python3对于python2就是future了,也就是说,在python2的环境下,超前使用python3的print函数. 在python2.x的环境是使用下面语句,第二句语法检查通过,第三句语法检查失败 from __future__ import print_function print('you are good') # syntax pass

Python基础之--from __future__ import unicode_literals作用

①  Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了 ② 从python 2.7到Python 3.x就有不兼容的一些改动,比如2.x里的字符串用'xxx'表示str,Unicode字符串用u'xxx'表示unicode,而在3.x中,所有字符串都被视为unicode,因此,写u'xxx'和'xxx'是完全一致的,而在2.x中以'xxx'表示的str就必须写成b'xxx',以此表示

from __future__ import absolute_import

这样以后:局部的包将不能覆盖全局的包, 本地的包必须使用相对引用了. 例: from celery import Celery 表示引用的全局的 from proj.celery import app 表示引用局部的

python之使用__future__(解决版本不同,不兼容问题)

Python的新版本会引入新的功能,但是,实际上这些功能在上一个老版本中就已经存在了.要"试用"某一新的特性,就可以通过导入__future__模块的某些功能来实现. 例如,Python 2.7的整数除法运算结果仍是整数: >>> 10 / 3 3 但是,Python 3.x已经改进了整数的除法运算,"/"除将得到浮点数,"//"除才仍是整数: >>> 10 / 3 3.3333333333333335 >

python 使用__future__

Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了. 从Python 2.7到Python 3.x就有不兼容的一些改动,比如2.x里的字符串用'xxx'表示str,Unicode字符串用u'xxx'表示unicode,而在3.x中,所有字符串都被视为unicode,因此,写u'xxx'和'xxx'是完全一致的,而在2.x中以'xxx'表示的str就必须写成b'xxx',以此表示“二进制