Python 3 没有 GOTO 或类似的东西。但我有一些算法,需要 GOTO 类型的功能。可能有人可以建议出路吗?
主菜单
1-新游戏 2-选项 3-退出
用户操作 - 进入主菜单 - 进入选项菜单 - 再次进入主菜单等等。所以在代码中我不知道如何通过主菜单返回并传送到上层代码。
Python 3 没有 GOTO 或类似的东西。但我有一些算法,需要 GOTO 类型的功能。可能有人可以建议出路吗?
主菜单
1-新游戏 2-选项 3-退出
用户操作 - 进入主菜单 - 进入选项菜单 - 再次进入主菜单等等。所以在代码中我不知道如何通过主菜单返回并传送到上层代码。
您可以使用字典:“用户选择”->“相应操作”,例如:
import sys
def foo():
print('foo')
actions = {'1': foo, '2': sys.exit}
def read_choice(choices, prompt):
c = None
while c not in choices:
c = input(prompt)
return c
while True:
# get user input
x = read_choice(actions, 'Input 1 to do foo or 2 to exit')
actions[x]() # act on it
请参阅完整的示例,该示例还显示了如何从配置文件动态创建菜单。