我正在尝试做菜单,这很容易,但是我不明白为什么永远不会结束我的循环,我附加了我的代码:
def main():
menu_bool = False
while(menu_bool == False):
print("Menu:nt1. Copiar")
x = input()
if x == 1:
print("You have selected option 1.")
menu_bool = True
# Ejecutamos la función main
if __name__ == '__main__':
main()
为什么当我按" 1"要求我再次选择选项时?我已经声明了一个布尔变量以停止它,menu_bool = True
,但我不知道为什么我的主要功能在循环中。
我尝试执行global variable
,但它也行不通。那么这意味着我的menu_bool = True
从未完成,但我不明白为什么。
menu_bool = False
def main():
global menu_bool
while(menu_bool == False):
print("Menu:nt1. Copiar")
x = input()
if x == 1:
print("You have selected option 1.")
menu_bool = True
# Ejecutamos la función main
if __name__ == '__main__':
main()
非常感谢!
正如其他人所说的,基本上您是在比较ints的字符串。另外,我建议您使用bools更多的pythony,在这种情况下,使用not
,而不是通过比较操作员进行显式比较。
def main():
menu_bool = False
while(not menu_bool):
print("Menu:nt1. Copiar")
x = input()
if x == '1':
print("You have selected option 1.")
menu_bool = True