[英]ValueError + repetition I can't figure out
我是編程新手。 我必須為計算器編寫腳本。 我有兩個問題:
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()
有人可以指出我正確的方向嗎?
這里的主要錯誤是您在函數定義之后調用了input_number1()
, input_operator()
和input_number2()
,因此它們在函數定義后調用一次,並且忽略它們的返回值,然后再次進行實際存儲和計算結果。
關於ValueError
我似乎無法找到可能的位置,對我而言,代碼在解決主要問題后可以正常工作。 問題發生在哪一行?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.