When an attribute is not found object.__getattr__ is called. Is there an equivalent way to intercept undefined methods?
There is no difference. A method is also an attribute. (If you want the method to have an implicit "self" argument, though, you'll have to do some more work to "bind" the method).
__getattr__ equivalent for methods