python2和3整数的区别

681次阅读
没有评论

python2和3整数的区别

1、问题分析

在Python 2中,将两个整数相除得到的结果稍有不同:

>>> python2.7
>>> 3 / 2
1

Python返回的结果为1,而不是1.5。在Python 2中,整数除法的结果只包含整数部分,小数部 分被删除。请注意,计算整数结果时,采取的方式不是四舍五入,而是将小数部分直接删除。

2、python2和3整数的区别

在Python 2中,若要避免这种情况,务必确保至少有一个操作数为浮点数,这样结果也将为 浮点数。python3进行了优化,整数相除的结果可以是小数,例如,10/4的结果是2.5,而非python2中的2。如果你想在python3中得到整数相除的结果,你需要使用//符号。

>>> 3 / 2
1
>>> 3.0 / 2
1.5
>>> 3 / 2.0
1.5
>>> 3.0 / 2.0
1.5

从Python 3转而用Python 2或从Python 2转而用Python 3时,这种除法行为常常会令人迷惑。使用或编写同时使用浮点数和整数的代码时,一定要注意这种异常行为。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-04-27发表,共计435字。
新手QQ群:570568346,欢迎进群讨论 Python51学习