我有两节课。 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
答案 0 :(得分:0)
根据错误,您的producto
类在一个名为producto
的模块中定义,您正在从模块导入和继承,而不是类。变化:
class alimentacion(producto):
为:
class alimentacion(producto.producto):
所以你从模块中定义的类继承。