add_food() 恰好接受 1 个位置参数(给定 2 个)
add_food() takes exactly 1 positional argument (2 given)
下面是我的代码:
class Food(object):
def __init__(self,name,calories,foodID):
self.__name = name
self.__calories = calories
self.__foodID = foodID
def __str__(self):
return "{} ({} cal)".format(self.__name,self.__calories,self.__foodID)
#ACCESSOR VARIABLE
def get_foodID(self):
return self.__foodID
def get_foodCalories(self):
return self.__calories
class Meal(object):
def __init__(self):
self.__food_list = []
def add_food(food):
self.__food_list.append(food)
chs = Food("cheese", 80, 12345)
meal = Meal()
meal.add_food(chs)
这顿饭class应该只有一个属性;一个列表。 add_food() 方法应该将 Food 参数添加到 Meal 中。它告诉我我给出了 2 个参数,但我看不到哪里
谢谢
您的 add_food
方法中缺少 self
改变这个:
def add_food(food):
至此
def add_food(self, food):
下面是我的代码:
class Food(object):
def __init__(self,name,calories,foodID):
self.__name = name
self.__calories = calories
self.__foodID = foodID
def __str__(self):
return "{} ({} cal)".format(self.__name,self.__calories,self.__foodID)
#ACCESSOR VARIABLE
def get_foodID(self):
return self.__foodID
def get_foodCalories(self):
return self.__calories
class Meal(object):
def __init__(self):
self.__food_list = []
def add_food(food):
self.__food_list.append(food)
chs = Food("cheese", 80, 12345)
meal = Meal()
meal.add_food(chs)
这顿饭class应该只有一个属性;一个列表。 add_food() 方法应该将 Food 参数添加到 Meal 中。它告诉我我给出了 2 个参数,但我看不到哪里
谢谢
您的 add_food
方法中缺少 self
改变这个:
def add_food(food):
至此
def add_food(self, food):