[Python-Dev] bool conversion wart?

Mike Klaas mike.klaas at gmail.com
Fri Feb 23 02:39:48 CET 2007


On 2/22/07, Neal Becker <ndbecker2 at gmail.com> wrote:

> Well consider this:
> >>>str (4)
> '4'
> >>>int(str (4))
> 4
> >>>str (False)
> 'False'
>
> >>>bool(str(False))
> True
>
> Doesn't this seem a bit inconsisent?

Virtually no python objects accept a stringified version of themselves
in their constructor:

>>> str({})
'{}'
>>> dict('{}')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #0 has length 1; 2 is required
>>> str([])
'[]'
>>> list('[]')
['[', ']']

Python is not Perl.

-Mike


More information about the Python-Dev mailing list