Python 属性错误:';布尔';对象没有属性';钥匙';
我是这个网站的新手,也是编程的新手,我正在尝试使用一本关于python 3.1的入门书来学习python。我遇到了一个无论我尝试什么都不起作用的例子,我已经在写作中寻找了大约10次错误,但这似乎正是我在书中看到的。例如: 冰箱课 这就是我调用类的方式,以及我如何使用这些类和我得到的错误 exec(open(“/home/knoppix/test/fredge.py”).read()) >>>exec(open(“/home/knoppix/test/omelet.py”).read()) >>>o=煎蛋卷(“奶酪”) >>>f=冰箱({“奶酪”:5,“牛奶”:4,“鸡蛋”:12}) >>>o.get_成分(f) >>>o.mix() 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“”,第41行,混合 AttributeError:“bool”对象没有属性“keys” 如果代码中有打字错误,请原谅,这正是我在书中发现的Python 属性错误:';布尔';对象没有属性';钥匙';,python,Python,我是这个网站的新手,也是编程的新手,我正在尝试使用一本关于python 3.1的入门书来学习python。我遇到了一个无论我尝试什么都不起作用的例子,我已经在写作中寻找了大约10次错误,但这似乎正是我在书中看到的。例如: 冰箱课 这就是我调用类的方式,以及我如何使用这些类和我得到的错误 exec(open(“/home/knoppix/test/fredge.py”).read()) >>>exec(open(“/home/knoppix/test/omelet.py”).read()) >>>
def get_ingredients(self, fridge):
self.from_fridge= fridge.get_ingredients(self)
在此函数中,您的冰箱.get_配料()
可能返回False
因此,self.from_冰箱
有Boolean
值,该值没有keys()
方法
您可能需要添加适当的签入mix()
方法
在此函数中,您的冰箱.get_配料()
可能返回False
因此,self.from_冰箱
有Boolean
值,该值没有keys()
方法
您可能需要添加适当的签入mix()
方法。函数“\uu known\u kinds(kind)”最好返回{}以保持一致,而不是不同的对象类型,尽管“None”比“False”好
然后只需在mix()方法中处理字典类型。还可以从mix()中删除else,因为如果dict=={},将引发异常
def mix(self):
if self.from_fridge == {}:
raise IndexError("self.from_fridge returns Nothing")
for ingredient in self.from_fridge.keys():
..函数“\uuuu known\u kinds(kind)”最好返回{}以保持一致,而不是不同的对象类型,尽管“None”比“False”好
然后只需在mix()方法中处理字典类型。还可以从mix()中删除else,因为如果dict=={},将引发异常
def mix(self):
if self.from_fridge == {}:
raise IndexError("self.from_fridge returns Nothing")
for ingredient in self.from_fridge.keys():
…可能是,但如果它返回false,则整个程序都是错误的,因为它不会执行它应该执行的操作,但是如果它返回false,则整个程序都是错误的,因为它不会执行它应该执行的操作
def get_ingredients(self, fridge):
self.from_fridge= fridge.get_ingredients(self)
if kind == "cheese":
return {"eggs":2, "milk":1, "cheese":1}
elif kind == "mushroom":
return {"eggs":2, "milk":1, "cheese":1, "mushroom":2}
elif kind == "onion":
return {"eggs":2, "milk":1, "cheese":1, "onion":1}
else:
return {}
def mix(self):
if self.from_fridge == {}:
raise IndexError("self.from_fridge returns Nothing")
for ingredient in self.from_fridge.keys():