請幫忙!我不明白這裏的錯誤。爲什麼當我輸入0,1或2以外的數字時,出現錯誤:「'int'object is not callable」?相反,假設打印出「您輸入的數字不正確,請重試」,然後回到提問。Python Int對象不可調用
第二個問題:我該如何更改代碼,即使我輸入字母字符,它也不會給我Value Error並繼續重新提問?謝謝!
def player_action():
player_action = int(input("Enter 0 to stay, 1 to go Up, or 2 to go Down: "))
if player_action == 0:
print ("Thank You, you chose to stay")
if player_action == 1:
print ("Thank You, you chose to go up")
if player_action == 2:
print ("Thank You, you chose to go down")
else:
print ("You have entered an incorrect number, please try again")
player_action()
player_action()
你的變量名陰影函數名。您嘗試調用函數'player_action()',但實際上調用變量'player_action',這是一個int。不要爲函數和變量使用相同的名稱! – Craig
此外,沒有理由使此函數遞歸。只要放一個'while'循環,直到你得到一個有效的輸入,然後用這個輸入做一些事情。 – Craig
哦,好的,謝謝! –