[Python-ideas] Programming recommendations (PEP 8) and boolean values

Ned Batchelder ned at nedbatchelder.com
Wed Aug 8 23:56:46 CEST 2012


On 8/8/2012 4:29 PM, Georg Brandl wrote:
> For None, "==" and "is" are equivalent, because no other object is equal
> to None.  For True and False, this is different, and using "is" here is
> a very stealthy bug. 
It's easy to make other objects == None, by writing buggy __eq__ 
methods.  That doesn't happen much, but it's easier with __ne__, where 
the negated logic is easy to screw up.  I've seen it happen. Use "is 
None", not "== None".

--Ned.



More information about the Python-ideas mailing list