Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python程序,允许用户从列出的项目中进行选择_Python_List_Choice - Fatal编程技术网

Python程序,允许用户从列出的项目中进行选择

Python程序,允许用户从列出的项目中进行选择,python,list,choice,Python,List,Choice,注意:这是我第一次用python编写程序。我有visual basic和Q basic方面的经验。感谢您的回复 概述:在这个程序中,我希望用户输入一个选定的选项,然后用下一个选项屏幕提示(目前不在,但我正在使用打印(“结束测试”)来举例说明)。我想让用户能够输入单词的大写或小写形式。例如:用户在第一次提示时键入“gun”。然后,屏幕将清除(尚未实施),然后显示另一个选项提示的枪类型选择。最终,作为完成的程序,我希望用户能够选择枪、类型和枪上的MOD,并能够查看制作该类型枪的选定MOD所需的材料

注意:这是我第一次用python编写程序。我有visual basic和Q basic方面的经验。感谢您的回复

概述:在这个程序中,我希望用户输入一个选定的选项,然后用下一个选项屏幕提示(目前不在,但我正在使用打印(“结束测试”)来举例说明)。我想让用户能够输入单词的大写或小写形式。例如:用户在第一次提示时键入“gun”。然后,屏幕将清除(尚未实施),然后显示另一个选项提示的枪类型选择。最终,作为完成的程序,我希望用户能够选择枪、类型和枪上的MOD,并能够查看制作该类型枪的选定MOD所需的材料

问题:1)我想包括列表,因为该程序最终将允许用户返回并再次选择。那么,我如何使用一份清单,或者是否有其他更适合这份工作的东西

2) 如何创建清除屏幕的功能

3) 如何确保用户可以输入“gun”、“gun”或“gun”,并且程序不区分大小写,并允许任何包含字母g、u和n的输入继续到下一个提示

测试想法:1)尝试将程序定义为wc

2) 使用Try/Except/Else代替while循环

3) 我以前试过为选择提示制作列表,但发现它们比当时的价值更大

当前问题:到目前为止,我所编写的代码非常简单,而且大部分都能正常工作。只有用户对第一选择的输入似乎只允许“枪”,而不允许“枪”。此外,一旦程序结束,它永远不会打印“结束测试”

当前代码:

# Fallout 4 Weapons Mod's, Including the stat improvements, materials required
# and any levels of perks needed.
wc = ''
print()
print()
print()
print('Fallout Weapon Mods Planner!')
print()
print()
print()
print('Enter one of the following:')
print()
print('* Gun')
print()
while wc != 'Gun' or 'gun':
    wc = input('Choice: ')
    if wc == 'Gun': 
        print('* Pistols')
        print('* Rifles')
        print('* Shotguns')
        print('* Submachine Guns')
        print('* Heavy Weapons')
        print('* Energy Weapons')
        print('* Plasma Weapons')
        print('* Other')
        wc = input('Choice: ')
        break
    else:
        print('Invalid entry, be sure to use correct spelling.')
        continue

        print('End Test')
  • 您的代码只显式测试
    wc==“Gun”
    ;如果您还想接受
    “gun”
    ,则需要更改该测试
  • 由于
    print('End Test')
    是缩进的,因此它是
    else
    块的最后一部分;因为它紧跟在
    continue
    语句之后,所以永远不会到达它

  • 谢谢我真不敢相信我把这些都看过了。