>>> 100**0.5 != 4+6
False
>>> 100**0.5 == 4+6
True
>>> 4+6
10
>>> 100**0.5
10.0
>>> 10.0==10
True
Run Code Online (Sandbox Code Playgroud)
谁可以告诉我为什么10.0==10是True?我认为10.0是a float和10是int,我知道在java中他们不相等.
引自http://docs.python.org/2/library/stdtypes.html#numeric-types-int-float-long-complex
Python完全支持混合算术:当二进制算术运算符具有不同数值类型的操作数时,具有"较窄"类型的操作数被扩展为另一个的操作数,其中普通整数比长整数窄,比浮点更窄,比浮点更窄.复杂.
所以,10扩大到了10.0.这就是为什么10 == 10.0
| 归档时间: |
|
| 查看次数: |
2169 次 |
| 最近记录: |