Вы не можете, никогда не должны и не хотите этого.
В Python все является объектом. Классы - это вещи, поэтому они являются объектами. Как и методы.
Существует объект с именем, A
который является классом. У него есть атрибут с именем stackoverflow
. У него может быть только один такой атрибут.
Когда вы пишете def stackoverflow(...): ...
, происходит то, что вы создаете объект, который является методом, и назначаете его stackoverflow
атрибуту A
. Если вы пишете два определения, второе заменяет первое, так же, как присваивание всегда ведет себя.
Кроме того, вы не хотите писать код, который делает самые разные вещи, для которых иногда используется перегрузка. Это не так, как работает язык.
Вместо того, чтобы пытаться определить отдельную функцию для каждого типа вещей, которые вам могут дать (что в любом случае не имеет смысла, поскольку вы не указываете типы для параметров функции), перестаньте беспокоиться о том, что это такое , и начните думать о том, что они могут сделать .
Вы не только не можете написать отдельный для обработки кортеж против списка, но и не хотите или не должны .
Все, что вы делаете, это пользуетесь тем фактом, что они оба, например, итеративны (то есть вы можете писать for element in container:
). (Тот факт, что они не имеют прямого отношения к наследованию, не имеет значения.)