我正在python中开发一个非常基本的"库存"系统,使用列表作为库存本身,并使用dicts来存储物品以及我有多少上述物品。
我试图实现的是,如果我的库存中已经有一个项目,并且我提取了更多,那么我不想要一个新的dict,我想将新的项目数量添加到现有的项目中。
我的功能是:
def addToInv(item, number):
if item in inventory:
newNumber = inventory[item] + number
slot = {item : newNumber}
inventory.append(slot)
else:
slot = {item : number}
inventory.append(slot)
它只是在列表中添加一个新的dict。我怎样才能做到这一点?
要向列表中添加新项目或修改已包含的项目,只需修改内容即可:
if item in inventory:
inventory[item] += number
else:
inventory[item] = number
如果我很清楚您使用的是一个包含的字典
{ item1:nb1, item2:nb2, ... }
如果是,这就足够了:
def addToInv(item, number):
if item in inventory.keys():
newNumber = inventory[item] + number
else:
newNumber=number
inventory[item] =newNumber