Raymond Hettinger <raymond.hettin...@gmail.com> added the comment:
To get a better insight into what is going on, see https://docs.python.org/3/howto/descriptor.html#invocation-from-an-instance The relevant text is, "So if __getattr__() exists, it is called whenever __getattribute__() raises AttributeError (either directly or in one of the descriptor calls)." If needed, you can bypass the __getattr__ hook by calling object.__getattribute__ directly: >>> object.__getattribute__(C(), 'test') Traceback (most recent call last): File "<pyshell#6>", line 1, in <module> object.__getattribute__(c, 'test') File "/Users/raymond/Documents/tmp14.py", line 26, in __get__ raise AttributeError("Python bug?") AttributeError: Python bug? ---------- nosy: +rhettinger _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue45064> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com