On Sat, Feb 22, 2014 at 8:20 PM, Antoine Pitrou <solip...@pitrou.net> wrote:
> On Sat, 22 Feb 2014 16:12:27 +0900
> "Stephen J. Turnbull" <step...@xemacs.org> wrote:
>>
>> Note in support: I originally thought that "get" methods would be more
>> efficient, but since Nick pointed out that "haveattr" is implemented
>> by catching the exception (Yikes! LBYL implemented by using EAFP!), I
>> assume that get methods also are (explicitly or implicitly)
>> implemented that way.
>
> Well, the only way to know that a key (or attribute) exists is to do
> the lookup. What else would you suggest?
>
> And, yes, EAFP can avoid race conditions and the like (besides being
> more efficient with non-trivial keys).

Which means that, fundamentally, EAFP is the way to do it. So if PEP
463 expressions had existed from the beginning, hasattr() probably
wouldn't have been written - people would just use an
except-expression instead.

ChrisA
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to