Casey Duncan <casey at zope.com> writes: > On Fri, 19 Mar 2004 19:31:16 +0100 > Thomas Heller <theller at python.net> wrote: > >> Barry Warsaw <barry at python.org> writes: >> >> > On Fri, 2004-03-19 at 12:59, Michael Chermside wrote: >> > >> >> Identity Objects can be (meaningfully) compared by: >> >> >> >> * Object Identity >> >> To see if these are "the same object". Also useful >> >> for low-level memory stuff according to Tim. >> >> (just use '==', although 'is' would work too) >> > >> > Using == for identity objects is the wrong thing. We should >> > discourage tests like "if obj == None" in favor of "if obj is None". >> >> The problem (if there is any) with 'is' is that it exposes >> implementation details, therefore it should not be used unless on >> really knows what one is doing. >> >> And 'if obj is None' gains performance by relying on one of these. >> >> So I would consider 'if obj == None' correct, but unoptimized code. > > The problem is that 'obj == None' is not the assertion you want to make > usually. 'obj == None' means "obj claims it is equal to None", whereas > 'obj is None' means 'obj is the None object'. The latter is a much more > stringent assertion than the former which relies on the particular > implementation of obj. Ok, so I propose to add a isNone operator or builtin function =:) Thomas
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4