i changed sub() to num_1() and num_2()
it works fine untill i use a letter. then i get this error
print("The result is:", int(num1) - int(num2))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
>>>
it works fine untill i use a letter. then i get this error
print("The result is:", int(num1) - int(num2))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
>>>
import math print("Calculator") def num_1(): try: num1 = int(input("Give a number: ")) except (TypeError, ValueError): print("This input is invalid.") num1 = None num_1() else: return num1 def num_2(): try: num2 = int(input("Give a number: ")) except (TypeError, ValueError): print("This input is invalid.") num2 = None num_2() else: return num2 def main(): while True: num1 = num_1() num2 = num_2() print("(1)+") print("(2)-") print("(3)*") print("(4)/") print("(5)sin(number1/number2)") print("(6)cos(number1/number2)") print("(7)Change numbers") print("(8)Quit") print("Current numbers: ", num1, num2) num3 = int(input("Please select something (1-6): ")) if num3 == 1: print("The result is:", int(num1) + int(num2)) elif num3 == 2: print("The result is:", int(num1) - int(num2)) elif num3 == 3: print("The result is:", int(num1) * int(num2)) elif num3 == 4: print("The result is:", int(num1) / int(num2)) elif num3 == 5: print("The result is:", (math.sin(int(num1) / int(num2)))) elif num3 == 6: print("The result is:", (math.cos(int(num1) / int(num2)))) elif num3 == 7: num1 = None num2 = None main() elif num3 == 8: print("Thank you!") break else: print("Selection was not correct.") if __name__ == "__main__": main()