[Python-Dev] Comment on PEP 562 (Module getattr and dir) (original) (raw)

Serhiy Storchaka storchaka at gmail.com
Sun Nov 19 15:41:52 EST 2017


19.11.17 22:24, Mark Shannon пише:

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"] except KeyError: raise AttributeError(f"module has no attribute '{name}'") return getter(name)

I think it is better to describe in the terms of getattr.

def ModuleType.getattr(mod, name): try: getter = mod.dict["getattr"] except KeyError: raise AttributeError(f"module has no attribute '{name}'") return getter(name)

The implementation of ModuleType.getattribute will be not changed (it is inherited from the object type).



More information about the Python-Dev mailing list