[Python-ideas] Python hook just before NameError

Mark Lawrence breamoreboy at yahoo.co.uk
Mon Dec 29 08:46:02 CET 2014

On 28/12/2014 16:42, Chris Angelico wrote:
> I mainly did up this patch to see how hard it would be, and now it's
> turned out to be fairly simple, I'm curious as to whether it would
> actually be useful to people.
> At the point where a global/builtin name lookup is about to raise
> NameError, first try calling a Python function, along the same lines
> as __getattr__. If that function hasn't been defined, raise NameError
> as normal; but if it has, let it either raise NameError or return some
> object, which is then used as if the name had been bound to it.
> Patch is here:
> http://bugs.python.org/issue23126
> The idea is to allow convenient interactive use; auto-importing
> modules is easy, and importing names from modules ("exp" --> math.exp)
> can be done easily enough too, given a list of modules to try.
> It's probably not a good idea to use this in application code, and I
> definitely wouldn't encourage it in library code, but it has its uses
> interactively.
> Thoughts?
> ChrisA

+1 from me as I'm always forgetting the "obvious" imports such as sys 
and os when trying things interactively.

My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.

Mark Lawrence

More information about the Python-ideas mailing list