[英]How do I call a base class method from within the same overloaded derived class method in python?
[英]How to call a method of base class with same name method in derived class in python?
代碼:-
class Animal():
def __init__(self) -> None:
print("Animal Created")
def eat(self):
print("Animal Eating")
class Dog(Animal):
def __init__(self) -> None:
# Animal.__init__(self)
print ("Dog Created")
def eat(self):
print("Dog Eating")
mydog = Dog()
mydog.eat()
在這里,當我用 mydog object 調用eat() 方法時,它會打印“Dog Eating”,有沒有辦法用 mydog object 調用基礎動物 class 的eat() 方法,就像這樣
mydog.Animal.eat() or mydog.eat(Animal)
我不想使用 super(),因為它會從子 class 調用eat(),所以它會打印兩個語句“動物吃”和“狗吃”,這是我不想要的,我想調用一次只有一個。
可以,可以直接調用Animal
的eat
方法,傳入object作為參數。
Animal.eat(mydog)
雖然如果您給方法提供不同的名稱,它可能會使代碼更容易混淆。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.