我想从玩家那里得到输入以在'X'和'O'之间进行选择,并希望我的函数返回该'X'或'O',以便我可以处理该值。但是我的函数无法正常工作对于第一次重复,它返回正确的值,但是对于下一个或更多个重复调用函数,它返回Null。 请帮助我。
首先我输入了错误的输入(例如C),然后更正了所需的输入'X'或'O'。根据我的说法,它应该根据输入返回'X'或'O',但返回空值。
def getPlayerLetter():
userLetter = input("Do you want to be 'X' or 'O'? ")
if userLetter == 'X' or userLetter == 'O':
return userLetter
else:
print("Wrong choice.try again...")
getPlayerLetter()
letter = getPlayerLetter()
print(letter)
我的输出。
Do you want to be 'X' or 'O'? C
Wrong choice.try again...
Do you want to be 'X' or 'O'? Y
Wrong choice.try again...
Do you want to be 'X' or 'O'? X
None
答案 0 :(得分:2)
您需要return
的{{1}}结果:
getPlayerLetter()
输出:
def getPlayerLetter():
userLetter = input("Do you want to be 'X' or 'O'? ")
if userLetter == 'X' or userLetter == 'O':
return userLetter
else:
print("Wrong choice.try again...")
return getPlayerLetter()
letter = getPlayerLetter()
print(letter)