布尔变量没有得到更新

Boolean variable does not get updated

我有一段简单的代码要求用户输入和 returns 一个布尔变量。如果输入不可接受,用户有机会纠正自己。但只有当 if 语句的 else 部分未被调用时,布尔值才会正确更新。如果是,函数总是 returns False。

def tryAgain():
    bol = False
    print('Do you want to try again? (Y/N)')
    answer = input('> ').lower()
    if (answer == 'y' or answer == 'n'):
        if answer == 'y':
            bol = True
    else:
        print('Your answer could not be parsed')
        tryAgain()
    return bol

那一行

    tryAgain()

应该是

    bol =  tryAgain()

它会起作用的。 :-)

糟糕...按照 Saeed 所说...在回复之前没有阅读他的评论。