В this article Гвидо ван Россум говорит, что такого рода Многометодная реализации в Python:Python мультиметоды с использованием isinstance
def foo(a, b):
if isinstance(a, int) and isinstance(b, int):
...code for two ints...
elif isinstance(a, float) and isinstance(b, float):
...code for two floats...
elif isinstance(a, str) and isinstance(b, str):
...code for two strings...
else:
raise TypeError("unsupported argument types (%s, %s)" % (type(a), type(b)))
является «утомительно» и «не очень OO». Затем он переходит к описанию того, как декораторы могут использоваться для реализации мультиметодов, которые, как я думаю, были бы недоступны тем, у кого не было достаточно глубокого знания Python.
Мой вопрос: мне нужно написать мультиметод, что на самом деле «не OO» о коде выше?
ОБНОВЛЕНИЕ: В свете ответа Томаса Ороско я теперь понимаю, что мне вообще не нужно «писать» многометод.
Вы бы возложить ответственность за «... кода два абсолюта ...» в какой бы то ни типа. –