【发布时间】:2017-09-03 02:58:41
【问题描述】:
我有一个名为 add_item(self, item) 的方法,我想用更多项目更新 items_category 值
def add_item(self, item):
self.items.update({item.category: {item.name: item}})
"""
IN My Tests.
self.nakkumart.add_item(Item("Call Of Duty", "Game", 3500, 1))
self.nakkumart.add_item(Item("God Of War 3", "Game", 3500, 1))
print(self.nakkumart.items['Game']['Call Of Duty'].price) >>>Raises KeyError 'Call Of Duty Not found'
"""
我认为每次调用add_item(Item),item.category 都会再次被重新创建,并且它之前的值丢失了。是我实现self.items.update({item.category: {item.name: item}}) 的方式还是我应该怎么做才能使print(len(self.nakkumart.items['Game'])) 在连续调用add_item(Item) 时打印2
【问题讨论】:
-
如果你试试这个语句 print(self.nakkumart.items['Game']['God Of War 3'].price) ,它会打印出正确的输出吗?
-
是的,它确实打印了 3500
标签: python python-2.7 python-3.x dictionary