我有一個泛型類(A)這是被繼承了很多像這樣運行:避免如果__name__ ==「__main__」在Python子類使用功能從父
class A:
def run(self):
...
self.do_something()
...
#abstract function
def do_something(self):
pass
class B(A):
def do_something(self):
...
子類是我正在通過將此代碼添加到每個文件直接運行單獨的文件(B是子類的文件名):
if __name__ == '__main__':
B().run()
我的問題是,我能避免這個代碼添加到所有文件與子類,因爲代碼中唯一改變的是正在使用的類(在這個例子中是B)?
順便說一句,你可以用'@ abc.abstractmethod'強制執行的要求,即'do_something' _actually_是抽象的。 – katrielalex
是的,我知道,我真的使用它,只是不想讓這個例子比需要的更復雜......但反正! – fvieira