我遇到了讓while循環工作的問題。我使用next = y命令來啓動程序,但是在我編寫的結尾(next == y)再次運行main函數時,這個位似乎不起作用。即使我輸入'n'或任何不是'y'的東西,函數仍然會重複。我的想法是,最初的next = y覆蓋了所有內容,但我似乎無法刪除此代碼,否則代碼只會運行並且沒有任何代碼運行。爲什麼我的while循環不起作用
next = "y"
def main():
operator = input("Select a function and press enter (+, - , *, /) ")
if(operator != "+" and operator != "-" and operator != "*"and operator >!= "/"):
print(input("You must enter a valid operator "))
else:
val1 = int(input("Select value 1 "))
val2 = int(input("Select value 2 "))
if(operator == "+"):
print(add(val1, val2))
elif(operator == "-"):
print(sub(val1, val2))
elif(operator == "*"):
print(mult(val1, val2))
else:
print(div(val1, val2))
next = (input("Would you like to do another calculation? (y/n): "))
while(next == "y"):
main()
我認爲這是一個簡單的修復,但我不知道如何做到這一點。
能否請你糾正代碼段的縮進?很難理解「main」和「outside」之外的內容。 – FlipTack