On Thu, Apr 26, 2012 at 3:10 AM, Steven D'Aprano
<steve+comp.lang.pyt...@pearwood.info> wrote:
> But I was actually referring to something more fundamental than that. The
> statement "a is b" is a *direct* statement of identity. "John is my
> father." "id(a) == id(b)" is *indirect*: "The only child of John's
> grandfather is the parent of the mother-in-law of my sister-in-law" sort
> of thing. (Excuse me if I got the relationships mixed up.)

I might have used a different example:

1) "John is my father."
2) "John has the same social security number as my father."

The first is concise and clearly expresses the intended statement of identity.
The second could be read to imply any number of things: "John is my
father."  "Somebody at the SSA messed up and gave John the same SSN as
my father."  "John is an identity thief."

If the assertion I'm trying to express is that John is my father, then
the direct statement #1 is the best way to convey that, at least in
English.  Likewise, "a is b" more clearly expresses the intended
comparison than does "id(a) == id(b)".
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to