python - 覆盖继承类中的基变量

标签 python

<分区>

我有一个名为 cashier 的基类和一个名为 Trainee 的继承类。我正在尝试覆盖实习类中名为 serviceTime 的变量。我想出了以下内容。但是,当我执行此操作时,我得到:

TypeError: __init__() 正好接受 2 个参数(给定 1 个)

即使我在我的基类中使用 object。谁能给我解释一下这是怎么回事?

class Cashier(object):
    def __init__(self, cashierNumber):
        self.cashierNumber = cashierNumber
        self.serviceTime = 1

class Trainee(Cashier):
    def __init__(self, cashierNumber):
        super(Trainee, self).__init__()
        self.serviceTime = 2

最佳答案

您应该将参数传递给父类的构造函数:

class Trainee(Cashier):
    def __init__(self, cashierNumber):
        super(Trainee, self).__init__(cashierNumber)
        self.serviceTime = 2

关于python - 覆盖继承类中的基变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46734961/

相关文章:

python - JSON 到 CSV - 仅写入一次未知标题行

python - 我用opencv把图片转成灰度,怎么在pyqt4上显示图片?

python - Python 中的 Hangman 游戏

python - 将 dat 文件导入 pandas 数据框

python - 如何编写与 scipy.optimize.minimize() 一起使用的多变量目标函数,以便也可以使用 matplotlib 绘制它?

python - 如何让 Python 函数休眠一段时间,而游戏的其余部分继续进行?

python - zlib 不以标准 zip 格式压缩

python - C API 中 Numpy datetime64 的转换

python - 对矩阵使用降维

python - 在 python 项目中不使用 __init__.py 文件是一种不好的做法吗?