当我运行以下代码时,标题中出现错误。
amount = int(input('How many packs do you want?'))
pack = {'nuts':4.0,
'bolts':300.0,
'screws':140.0,
'wire(m)':3.5}
for key,val in pack.items():
total = pack * amount
print(total,key)
我假设这是因为字典中的值不是整数。我该如何修复我的代码,以免出现此错误。
它应该打印这个人会收到的东西的数量,例如,如果有人订购了 2 包,它会打印:
8.0 坚果 600.0 bolt 280.0螺丝 7.0线(米)
最佳答案
您计算的 total
错误,您需要乘以 val
而不是 pack(这是一个字典)。请改用以下内容(total = val * amount
而不是 total = pack * amount
):
for key,val in pack.items():
total = val * amount
print(total,key)
所以不是,原因不是字典中的值不是整数。
关于python - 类型错误 : unsupported operand type(s) for *: 'dict' and 'int' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30681566/