def menu():
print("The calculator can do the following:")
print("1) Sum")
print("2) Differentiation")
print("3) Multiplication")
print("4) Division")
print("5) Times itself")
print("The chosen numbers are", " ", int(number1), " ", "and", " ", int(number2), sep="")
global choice
choice = input("Please choose a choice (1-5): ")
def main_programme():
action == int(choice)
if (action == 1):
print("sum", " ", int(number1), " ", "+", " ", int(number2), " ", "=", " ", int(number1) + int(number2), sep="")
elif (action == 2):
print("Differentiation", " ", int(number1), " ", "-", " ", "int(number2)", " ", "=", " ", int(number1) + int(number2), sep="")
elif (action == 3):
print("Multiplication", " ", int(number1), " ", "*", " ", "int(number2)", " ", "=", " ", int(number1) * int(number2), sep="")
elif (action == 4):
print("Division", " ", int(number1), " ", "/", " ", "int(number2)", " ", "=", " ", int(number1) / int(number2), sep="")
elif (action == 5):
print("Times_itself", " ", int(number1), " ", "**", " ", "int(number2)", " ", "=", " ", int(number1) ** int(number2), sep="")
else:
print("The choice was not recognised.")
number1 = input("Please give the first number: ")
number2 = input("Please give the second number: ")
menu ()
main_programme ()
print("Thank you for using the software.")
I found out that
choice = input("Please choose from 1-5: ")
Return choice
This is local scope for the variable choice. → " the variable choice is not defined"
I understood that adding writing “global choice” would have made it usable in “def main_programme”
but that did not work either.
I have read about scope of variables, and indecents have apparently an effect on whether variables are considered local or global.
I know I can use the version below. However, apparently it is not recommended.
choice = 0
def menu():
choice = input("Please do a choice (1-5): ")
return choice
Thank you in advance.