python - 如何让程序回到 "menu"?

标签 python python-3.x

Done = False
while not Done:
    print('S Start New Order')
    print('E Edit Order')
    print('P Print Bill')
    print('R Receive Payment')
    print('M Manager Report')
    print('Q Quit')
    print('-----------------')

    Command = ''
    while Command == '':
        Command = input("Enter Choice> ")
        Command = Command.strip().upper()
        if Command[0] == 'S':
            print('Start New Order:')     
        elif Command[0] == 'E':
            print('Edit Order:')
        elif Command[0] == 'P':
            print('Print Bill:')
        elif Command[0] == 'R':
            print('Recieve Payment:')
        elif Command[0] == 'M':
            print('Manager Report:')
        elif Command[0] == 'Q':
            print('Quit:')

我想做到这一点,当有人键入“j”或“34”时,它会跳回“输入选择”并且不会再次显示整个菜单。

最佳答案

  1. 我们必须检查输入的值。

例如

while Command not in ['S', 'E','P', 'R', 'M', 'Q']:
    Command = raw_input("Enter Choice> ")
    Command = Command.strip().upper()
  1. 当用户进入菜单的Q选项时使用break语句。或设置 Done = True
  2. 的值

例如

elif Command[0] == 'Q':
    print('Quit:')
    break

elif Command[0] == 'Q':
    print('Quit:')
    Done = True

关于python - 如何让程序回到 "menu"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28428000/

相关文章:

python - 我可以修补 Python 的断言以获得 py.test 提供的输出吗?

python - 通过 python 自动化 .get 请求

UDT C++ 库的 Python 包装器

python - 我如何检查调用参数是否会随 unittest.mock 更改

python - 如何使用数据类避免意外参数警告

Python - 读取 .b4u 文件 - 找到错误序列项 0 : expected str instance, 字节

python - 作用域问题,可以访问对象属性但不能访问对象实例

python - 随机梯度提升给出不可预测的结果

python - 仅径向变形即可校准摄像机

python - Kivy程序的固定窗口大小