python字典的比较_python-字典比较

我在python中遇到了字典比较方面的问题。我有两个字典,我想比较它们,当键相同时,值升级到

valueFromFirstDictionary + valueFromSecondDictionary

.

函数“addToInventory()”应该有45个硬币而不是3个,但问题出在哪里?在循环中,它打印45个,但当我打印所有字典时,它显示3个。

功能有问题:

def addToInventory(inventory, addedItems):

dictionaryHelp = {}

for i in addedItems:

dictionaryHelp.setdefault(i,0)

dictionaryHelp[i] = dictionaryHelp[i] + 1

for i, k in inventory.copy().items():

for j, l in dictionaryHelp.items():

#print(i, k, j, l)

if i == j:

suma = k + l

inventory.update({i:suma})

#inventory[i] = suma

print(inventory[i])

break

else:

inventory[j] = l

print(inventory)

return(inventory)

inv = {'golden coin': 42, 'rope': 1}

dragonLoot = ['golden coin', 'dagger','golden coin', 'golden coin', 'ruby']

inv = addToInventory(inv, dragonLoot)

for k, v in inv.items():

print(str(k) + ': ' + str(v))

item_total = item_total + v

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值