Stocking Out - cant pass


#1

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

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

prices = {
"banana" : 4,
"apple" : 2,
"orange" : 1.5,
"pear" : 3
}

Write your code below!

def compute_bill(food) :
total = 0
for item in food :
if stock[item] > 0 and :
total += prices[item]
elif stock[item] == 0:
return total
else:
return total
for item in stock :
if stock[item] != 0 :
stock[item]-=1
return total

print compute_bill(shopping_list)

IT GIVES A 7 IN THE CONSOLE BUT A CODECADEMY MESSAGE APEARES /

WHAT'S WRONG WITH MY CODE ,


#2

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

  • You don't need 'and' before the colon, in the if statement in the first for loop

  • After 'total += prices[item]], you just write 'stock[item] -= 1'

  • After this, you just need to return the total and that is it

Hope this helps you :+1:


#3

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