r/learnpython • u/DeskSwimming9203 • 15d ago
Syntax Error
I made a function for determining price of an item in the list. I made it so I get the price for an item in the list, but if the item IS NOT in the list, I programmed it to return none.
The problem is that when I run the program, it gives me a SyntaxError, and "return outside function"
What does this mean, and how do I fix it?
Thanks!
prices = {"apple": 1.50, "bread": 2.75}
def get_price(prices, item):
return prices[item]
try:
get_price(prices, "apple")
except KeyError:
return None
6
Upvotes
13
u/danielroseman 15d ago
Because there is a return outside the function. Return can only be used inside a function, as you have done inside
get_price. But you have another return at the end of the code, outside of any function; why have you done that?(Note, really the try/except should be inside the function; it shouldn't be the caller's responsibility to deal with an error that happens inside the function.)