Python:继承类的问题

亚历杭德罗·维拉诺·加西亚

我有两节课。producto,具有以下类定义:

class producto(object):

    def __init__(self, precio, nombre, _id, cantidad):

        self.__precio = precio
        self.__nombre = nombre
        self.__id  = _id
        self.__cantidad = cantidad

alimentacion使用以下类定义:

class alimentacion(producto):

    def __init__(self, precio, nombre, _id, cantidad, dias_caducidad):

        super(alimentacion, self).__init__(precio, nombre, _id, cantidad)

        self.__dias_caducidad = dias_caducidad

当我尝试alimentacion像这样实例化类的成员时

salmon = alimentacion(15, 'salmón', 435, 2, 15)

我收到以下错误:

C:\Python27\python.exe C:/Users/Ale/PycharmProjects/ticket/main.py
Traceback (most recent call last):
  File "C:/Users/Ale/PycharmProjects/ticket/main.py", line 2, in <module>
    from clases.tipos_producto import *
  File "C:\Users\Ale\PycharmProjects\ticket\clases\tipos_producto.py", line 4, in <module>
    class alimentacion(producto):
TypeError: Error when calling the metaclass bases
    module.__init__() takes at most 2 arguments (3 given)

Process finished with exit code 1
暗影游侠

根据错误,您的producto类是在一个模块中定义的,也称为producto,并且您是从模块而不是类导入和继承的。改变:

class alimentacion(producto):

至:

class alimentacion(producto.producto):

所以你从模块中定义的类继承。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章