[Python-Dev] PEP 463: Exception-catching expressions

Stephen J. Turnbull stephen at xemacs.org
Sat Feb 22 12:54:22 CET 2014


Antoine Pitrou writes:
 > On sam., 2014-02-22 at 19:29 +0900, Stephen J. Turnbull wrote:
 > > Antoine Pitrou writes:
 > > 
 > >  > Well, the only way to know that a key (or attribute) exists is to do
 > >  > the lookup. What else would you suggest?
 > > 
 > > Do the lookup at the C level (or whatever the implementation language
 > > is) and generate no exception, of course.  That's what would make it
 > > possibly more efficient.
 > 
 > Let's see:
 > - hasattr() does the lookup at the C level, and silences the
 > AttributeError
 > - dict.get() does the lookup at the C level, and doesn't generate an
 > exception
 > 
 > So apart from the minor inefficiency of generating and silencing the
 > AttributeError, those functions already do what you suggest.

But that's precisely the inefficiency I'm referring to.



More information about the Python-Dev mailing list