Issue with stoking out - stock is ok when checked before and after


#1



Stocking out - python


I can't find what is wrong


`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
}

print stock

Write your code below!

def compute_bill(food):
total = 0
for i in food:
if stock[i] > 0:
total += prices[i]
stock[i] -= 1
return total

print compute_bill(shopping_list)

print stock

RESULT :
{'orange': 32, 'pear': 15, 'banana': 6, 'apple': 0}
5.5
{'orange': 31, 'pear': 15, 'banana': 5, 'apple': 0}
None

MESSAGE :
Oops, try again. stock doesn't look quite right! Make sure to not call compute_bill since it changes the stock! It should contain: {'orange': 32, 'pear': 15, 'banana': 6, 'apple': 0}

`


#2

calling the function:

print compute_bill(shopping_list)

changes the stock before exercise validition can run, its pretty much in the error message that you shouldn't call the function


#3

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.