[Python-Dev] Comment on PEP 562 (Module __getattr__ and __dir__)

Steven D'Aprano steve at pearwood.info
Sun Nov 19 19:57:05 EST 2017


On Sun, Nov 19, 2017 at 08:24:00PM +0000, Mark Shannon wrote:
> Hi,
> 
> Just one comment. Could the new behaviour of attribute lookup on a 
> module be spelled out more explicitly please?
> 
> 
> I'm guessing it is now something like:
> 
> `module.__getattribute__` is now equivalent to:
> 
> def __getattribute__(mod, name):
>     try:
>         return object.__getattribute__(mod, name)
>     except AttributeError:
>         try:
>             getter = mod.__dict__["__getattr__"]

A minor point: this should(?) be written in terms of the public 
interface for accessing namespaces, namely:

              getter = vars(mod)["__getattr__"]



-- 
Steve


More information about the Python-Dev mailing list