Removing None objects from a sequence

Lie Ryan lie.1296 at gmail.com
Fri Dec 12 16:18:36 EST 2008


On Fri, 12 Dec 2008 11:50:38 -0500, Steve Holden wrote:

> Kirk Strauser wrote:
>> At 2008-12-12T15:51:15Z, Marco Mariani <marco at sferacarta.com> writes:
>> 
>>> Filip Gruszczyński wrote:
>>>
>>>> I am not doing it, because I need it. I can as well use "if not elem
>>>> is None",
>> 
>>> I suggest "if elem is not None", which is not quite the same.
>> 
>> So what's the difference exactly?  "foo is not None" is actually
>> surprising to me, since "not None" is True.  "0 is True" is False, but
>> "0 is not None" is True.  Why is that?
> 
> "is not" is an operator, so the parse is
> 
> foo (is not) None
> 
> not
> 
> foo is (not None)
> 

Personally, I'd prefer VB's version:
foo IsNot bar

or in pseudo-python
foo isnot bar

since that would make it less ambiguous.




More information about the Python-list mailing list