请帮忙!我不明白这里的错误。为什么当我输入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
哦,好的,谢谢! –