"0 in [True,False]" returns True

Grant Edwards grante at visi.com
Tue Dec 13 16:18:54 CET 2005

On 2005-12-13, bonono at gmail.com <bonono at gmail.com> wrote:
> Fredrik Lundh wrote:
>> bonono at gmail.com wrote:
>> > > but seriously, unless you're writing an introspection tool, testing for
>> > > bool is pretty silly.  just use "if v" or "if not v", and leave the rest to
>> > > Python.
>> > >
>> > The OP's code(and his work around) doesn't look like he is testing for
>> > boolean
>> which of course explains why he wrote
>>     In some program I was testing if a variable was a boolean
>> in the post I replied to...
>> > but more like the data type of something. I thought there is some idiom
>> > in python which said something like "don't assume" ?
>> "think before you post" ?
> Don't know what you mean.
> He seems to be testing "boolean type", not whether it is true
> or false.

Right.  But that's almost always pointless.  Knowing whether a
variable is a boolean or not is very rarely useful.  What one
wants to know is whether a varible is true or not. The code for
that is:

  if v:

  if not v:

Grant Edwards                   grante             Yow!  My DIGITAL WATCH
                                  at               has an automatic SNOOZE
                               visi.com            FEATURE!!

More information about the Python-list mailing list