Python why 100**0.5 == 4+6 is true?
python
Solution
Quoting from http://docs.python.org/2/library/stdtypes.html#numeric-types-int-float-long-complex
Python fully supports mixed arithmetic: when a binary arithmetic operator has operands of different numeric types, the operand with the “narrower” type is widened to that of the other, where plain integer is narrower than long integer is narrower than floating point is narrower than complex.
So, `10` is widened to `10.0`. Thats why `10 == 10.0`
Problem
``` >>> 100**0.5 != 4+6 False >>> 100**0.5 == 4+6 True >>> 4+6 10 >>> 100**0.5 10.0 >>> 10.0==10 True ``` Who can tell me why `10.0==10` is `True`? I think 10.0 is a `float` and 10 is `int`,I know in java they are not equal.