我的代码显示错误TypeError:+ =''int'和'str'的不支持的操作数类型

时间:2016-03-30 18:21:44

标签: python

shopping_list = ["banana", "orange", "apple"]

stock = {
    "banana": 6,
    "apple": 0,
    "orange": 32,
    "pear": 15
}

prices = {
    "banana": 4,
    "apple": 2,
    "orange": 1.5,
    "pear": 3
}
def compute_bill(food):
    total = 0
    for item in food:
        total += item
    return total
for key in prices:
    print compute_bill(key)

3 个答案:

答案 0 :(得分:1)

我想你想要这个:

total += prices[item]

项目是“香蕉”等..它的字符串,所以你得到这个错误

答案 1 :(得分:0)

compute_bill的参数为key,例如"banana" ...

因此for循环遍历key中的字符。你真正想要的是你的作业。

答案 2 :(得分:0)

for key in prices:

正在检索“banana”,“apple”等。这会导致您的compute_bill(食物)方法尝试将“banana”添加到您的总数中。 Total是一个int,“banana”是str,这就是你收到错误的原因。

弄清楚如何使用“香蕉”从价格表中获取香蕉的实际价格,你应该好好去。