Pythonというかオブジェクト指向についての質問です。
class Car(object): def __init__(self, model=None): self.model = model def run(self): print('run') def ride(self, person): person.drive() class Person(object): def __init__(self, age=1): self.age = age def drive(self): if self.age >= 18: print('ok') else: raise Exception('No drive') class Adult(Person): def __init__(self, age=18): if age >= 18: super().__init__(age) else: raise ValueError car = Car() baby = Baby() adult = Adult() car.ride(adult)
このプログラムで、Personクラスをインスタンス化していないのにCarクラスのrideメソッドの引数でpersonと頭文字を大文字にしなくても実行できてしまいます。なぜでしょうか?
ご回答の方、お持ちしております。
回答2件
あなたの回答
tips
プレビュー