On 2013.06.30 13:46, Andrew Z wrote:
> Hello,
> 
> print max(-10, 10)
> 10
> print max('-10', 10)
> -10
> 
> My guess max converts string to number bye decoding each of the characters to 
> it's ASCII equivalent?
> 
> Where can i read more on exactly how the situations like these are dealt with?
This behavior is fixed in Python 3:

>>> max('10', 10)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unorderable types: int() > str()

Python is strongly typed, so it shouldn't magically convert something from one 
type to another.
Explicit is better than implicit.
-- 
CPython 3.3.2 | Windows NT 6.2.9200 / FreeBSD 9.1
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to