假设征服一条龙的战利品表示为这样的字符串列表:dragonLoot = [‘gold coin’, ‘dagger’, ‘gold coin’, ‘gold coin’, ‘ruby’]写一个名为 addToInventory(inventory, addedItems)的函数,其中 inventory 参数
是一个字典,表示玩家的物品清单(像前面项目一样),addedItem参数是一个列表,
就像 dragonLoot。
代码如下:
def addToInventory(inv, addedItems):
# 利用空字典存储列表统计的物品名称及个数
c1 = {}
for something in addedItems:
c1.setdefault(something,0)
c1[something]+=1
for v in inv.keys():
if v not in c1.keys():
c1.setdefault(v, 0)
c1[v] += inv[v]
# 种类在,加数量
for k in c1.keys():
if k in inv:
c1[k] = c1[k] + inv[k]
return c1
def displayInventory(inv):
for k, v in inv.items():
print(str(v) + ' : ' + k)
inv={'gold coin': 42, 'rope': 1}
dragonLoot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby']
inv= addToInventory(inv, dragonLoot)
displayInventory(inv)
测试结果: