【发布时间】:2014-08-01 03:18:20
【问题描述】:
我有
class A(object):
def __init__ (self): raise NotImplementedError("A")
class B(A):
def __init__ (self):
....
pylint 说
__init__ method from base class 'A' is not called
显然,我不想这样做
super(B, self).__init__()
- 那我该怎么办?
(我试过abc得到了
Undefined variable 'abstractmethod'
来自 pylint,所以这也不是一个选项)。
【问题讨论】:
-
我不知道你在哪里使用了抽象类。如果你想在 B 中继承类 A,并且想在 B 中定义 init,那么请使用 super 代替。它是 abc 类的错误实现
-
我可以发誓当我读到它时它不存在。您是否记得使用模块名称和/或
from abc import abstractmethod来限定abstractmethod?