Главная /
Python: ООП и классы /
При наследовании в языке Python порядок разрешения методов для "классических" классов (т.е. классов, не являющихся наследниками класса object) определяется следующим образом:
При наследовании в языке Python
порядок разрешения методов для "классических" классов (т.е. классов, не являющихся наследниками класса object
) определяется следующим образом:
Правильный ответ:
рассматривается первый суперкласс и далее его суперклассы, если метод не найден, то рассматривается второй суперкласс
рассматривается первый суперкласс, если метод не найден, то рассматривается второй суперкласс и т.д., если во всех суперклассах метод не найден, то рассматривается суперклассы первого суперкласса и т.д.
рассматривается последний суперкласс и далее его суперклассы, если метод не найден, то рассматривается предпоследний суперкласс
рассматривается последний суперкласс, если метод не найден, то рассматривается предпоследний суперкласс и т.д., если во всех суперклассах метод не найден, то рассматривается суперклассы последнего суперкласса и т.д.
Сложность вопроса
86
Сложность курса: Python: ООП и классы
76
Оценить вопрос
Комментарии:
Аноним
Я завалил зачёт, какого рожна я не нашёл этот сайт с решениями интуит раньше
22 фев 2020
Аноним
Если бы не данные подсказки - я бы не осилил c этими тестами intuit.
03 дек 2015
Другие ответы на вопросы из темы программирование интуит.
- # Укажите результат выполнения скрипта: class Foo (object): obj=0 def __new__(cls,*dt,**mp): obj=1 def __init__(self): self.obj=2 o = Foo() print (o.obj)
- # Укажите результат выполнения скрипта: lst=[] class Foo (object): obj=0 lst.append(0) ob1 = Foo() ob2 = Foo() print (lst)
- # Укажите результат выполнения скрипта: class Foo(object): __value__={} def __getattr__(self, name): if name in self.__value__: return self.__value__[name] else: return name+'_atr' def __setattr__(self, name, value): object.__setattr__(self, '__value__', value) o = Foo() o.a=1 print (o.a, o.b)
- # Укажите результат выполнения скрипта: class Foo (object): def __init__(self, value): self.__val__=value def __sub__ (self, x): return Foo(self.__val__-x) def __add__ (self, x): return Foo(self.__val__+x) class Bar (Foo): def __sub__ (self, x): return Bar(self.__val__-x*2) def __mul__ (self, x): return Bar(self.__val__*x*2) class Baz (Bar): def __mul__ (self, x): return Baz(self.__val__*x) o = Baz(1) o*=2 o-=4 o+=3 print (o.__val__)
- # Встроенный атрибут объекта модуля __dict__: