不明白来自Python的两行代码

do not understand two lines of code from Python

我不明白 quite_program = Falsequite_program = True。他们的意思是什么?对于这段代码,我认为它会执行代码块,while not quit_program,但我不知道如何理解它。这意味着如果 quit_program 不是假的?我有点困惑,非常感谢你的帮助。

def print_menu():
    print("Today's Menu:")
    print('   1) Gumbo')
    print('   2) Jambalaya')
    print('   3) Quit\n')

quit_program = False

while not quit_program :
    print_menu()
    choice = int(input('Enter choice: '))
    if choice == 3 :
        print('Goodbye')
        quit_program = True
    else :
        print('Order: ', end='')
        if choice == 1 :
            print('Gumbo')
        elif choice == 2 :
            print('Jambalaya')
        print()

定义了变量quit_program = False,这样当代码到达while循环并检查条件是否为True时,就进入循环(因为不是False = True)。 一旦进入循环,它将继续 运行 并在每次启动时检查此条件。如果 quit_program 改为 True,那么下次它检查 while 循环开始时的条件时,它会确定它是 False(不是 True = False)并跳过循环。 由于循环后没有更多代码,程序正常结束

在您的程序中,quit_program用于根据需要停止程序的执行。当最初检查 while 循环条件时 quit_program = False 然后 not quit_program 给出 True.

while 循环一直执行到 quit_program = True。如果 quit_program = True 然后 not quit_program 给出 False 然后 while 循环将结束执行(运行)。这意味着此 while 循环仅在 choice == 3 条件为 True.

时结束

因此,您的程序正在执行 (运行),直到您将 input 设为 3。

这很简单..就像在任何其他编程语言中一样,如 C、CPP、JAVA...我们经常使用 'flag' 对吗?...BIngoo ...所以就像他们在这里使用了 'quit_program' 布尔类型变量.. 明确:

while not quit_program :

意味着在一个 while 循环中还有一个 'not' 这意味着只要条件满足它就会变为 return false...所以虽然不是 quit_program(quit_program是假的..所以它return是真的->你进入循环..你继续打印

中的东西
def print_menu():

酷吗? 所以接下来,代码继续执行代码中的下一组行->

choice = int(input('Enter choice: '))
if choice == 3 :
    print('Goodbye')

在此之后,quit_program if set to true!!!这是问题-> 从现在开始->>> 而不是 quit_program : 将 returning False!!