0
Почему выдает ошибку?А если взять у класса родителя color а не model,код сработает.
6 ответов
+ 2
class CarGruz(Car):
def __init__(self,model,color,weight):
super().__init__(model, color)
self.weight = weight
Car3 = CarGruz("Kamaz","Синий",40)
+ 1
Спасибо,это я понял.Но мне все же интересно,почему если брать только color,то код срабатывает.Это зависит от очередности в родительском классе?
+ 1
Абсолютно без разницы как ты аргумент называешь - в данном случае важен порядок, в котором аргументы ожидаются - это позиционные аргументы. Есть ещё именнованные аргументы и вот у них порядок не имеет значения, главное чтобы они приходили после позиционных.
Зы. У тебя срабатываетт model, только ты туда ссылку на сам объект положил - self: super().__init__(self,model)
0
А чтобы взять только model?Без color
0
Тогда не вызывай super(), иначе ты должен передать два параметра - model и color. Можешь сделать в родительском классе дефолтное значение у color, например, color= "Белый" или пустую строку оставь color =""
0
Спасибо.