为了账号安全,请及时绑定邮箱和手机立即绑定

如何以任何顺序允许多个用户响应?

如何以任何顺序允许多个用户响应?

素胚勾勒不出你 2021-11-23 16:15:22
我该怎么解决,以允许用户输入'Version','Credit','Info', 'Notes'和'Credit'以任何顺序?这是我试过的代码:if(answer == 'Debug'):    print('Type the word in the debug screen\nto get an output, '          'ex. Type "Version"\nto find the file Version.')print('\033[1;34;40m============')print('\033[1;39;40mVersion')print('\033[1;33;40mCredit')print('\033[1;34;40mInfo')print('\033[1;32;40mNotes')answer=raw_input()if(answer == 'Version'):    print('\033[1;39;39m1.2.2')if(answer == 'Credit'):    print('\033[1;33;40mXendos6 2/22/19')
查看完整描述

2 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

您可以使用包含每个问题和打印回复的字典,例如:


menu = {'Version': '1.2.2', 'Credit': 'Xendos6 2/22/19', 'Info': 'Some information'}


print('\033[1;34;40m============')

for k in menu.keys():

    print('\033[1;39;40m', k)


answer = raw_input()

if answer in menu:

    print('\033[1;39;39m', menu[answer])

else:

    print("Invalid answer:", answer)

这使得菜单更容易添加项目。如果要执行的代码比简单的文本字符串更复杂,则可以将操作放置在一个函数中,每个菜单项一个,并将函数名称用作值。然后将该函数称为menu[answer]()。


编辑:现在看来 OP 需要一个循环。这是一个示例,它在选择时从菜单中删除每个条目:


menu = {'Version': '1.2.2', 'Credit': 'Xendos6 2/22/19', 'Info': 'Some information'}


while menu:

    print('\033[1;34;40m============')

    for k in menu.keys():

        print('\033[1;39;40m', k)


    answer = raw_input()

    if answer in menu:

        print('\033[1;39;39m', menu[answer])

        del(menu[answer])

    else:

        print("Invalid answer:", answer)

这将在选择项目时删除键。循环在其中menu有数据项时继续-为空while menu:时menu为假。


查看完整回答
反对 回复 2021-11-23
?
紫衣仙女

TA贡献1839条经验 获得超15个赞

请看看这个。也许这会解决你的问题。


responses = {

    'version': '1.0.1',

    'credit': 'some_credit',

    'info': 'this is info',

    'debug': 'this is debug output'

}


for i in responses.keys():

    user_input = input('Please enter a choice from {}: '.format(options))

    print(responses.get(user_input))

注意:这只是一个模板


查看完整回答
反对 回复 2021-11-23
  • 2 回答
  • 0 关注
  • 163 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信