我是编程新手。我必须为计算器编写一个脚本。 我有两个问题:
ValueError
而不是计算,但我无法弄清楚我做错了什么。这是我的代码:
def input_number1():
prompt = 'Enter a number\n'
num1 = int(input(prompt))
if num1 <= 0:
print('Error')
input_number1()
else:
return num1
input_number1()
def input_operator():
prompt = 'Enter [1] to add, [2] to substract, [3] to multiply or [4] to divide?\n'
operator = int(input(prompt))
if operator < 1 or operator > 4 :
print('error')
input_operator()
else:
return operator
input_operator()
def input_number2():
prompt = 'Enter a number\n'
num2 = int(input(prompt))
if num2 <= 0 :
print('Error')
input_number2()
else:
return num2
input_number2()
num1 = input_number1()
operator = input_operator()
num2 = input_number2()
def do_calc():
if operator == 1:
print(num1 + num2)
elif operator == 2:
print(num1 - num2)
elif operator == 3:
print(num1 * num2)
else:
print(num1 / num2)
do_calc()
有人能指出我正确的方向吗?
答案 0 :(得分:0)
这里的主要错误是您在函数定义之后调用input_number1()
,input_operator()
和input_number2()
,因此在定义函数后调用一次并忽略它们的返回值,然后再次实际存储和计算结果。
关于ValueError
我似乎无法找到可能的位置,对我来说,修复主要问题后代码运行正常。这个问题发生在什么路上?