[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