Python 如何针对这种特定情况编写while循环?

Python 如何针对这种特定情况编写while循环?,python,while-loop,Python,While Loop,创建函数execChoice(choice)。 o使用Python的方式执行switch语句,该语句利用具有名称选项的dictionary对象,从dictionary调用函数,该dictionary将字符串选项指定的键传递到函数中 ▪ 是否可以通过在变量中大写字符串来检查不区分大小写 在检查它是否匹配字典中的键之前进行选择 o如果键不在字典中,则应调用MenuOptions模块中的默认函数 对于所讨论的while循环: •创建变量选项并为其分配空字符串 •创建一个while循环,直到变量选择的值

创建函数execChoice(choice)。 o使用Python的方式执行switch语句,该语句利用具有名称选项的dictionary对象,从dictionary调用函数,该dictionary将字符串选项指定的键传递到函数中

▪ 是否可以通过在变量中大写字符串来检查不区分大小写 在检查它是否匹配字典中的键之前进行选择

o如果键不在字典中,则应调用MenuOptions模块中的默认函数

对于所讨论的while循环:

•创建变量选项并为其分配空字符串

•创建一个while循环,直到变量选择的值为“X”时才会停止。 此检查应不区分大小写

•在while循环中:

o调用菜单模块中的getChoice函数,并将返回值分配给变量选项。 o调用菜单模块中的execChoice函数,并将变量选项传递给该函数

在以前的情况下,我正确地完成了类似的编码,但是,这一次让我停止了。我似乎无法通过这个while循环部分,而且我也对上面的情况有问题

def execChoice(choice):
    choices = 
          {
           "S": showPilots(),
           "A": addPilot(),
           "D": deletePilot(),
           "X": done()
           }
    if dict.keys() not in choices:
        default()


from .Menu import *

choice = []
while choice is True:
    choice = getChoice(Menu)
'''
Cannot figure out what i need to add after this
'''

预期结果应如上述描述所述,且循环/功能应根据指示正确运行。(尚未运行,只是在没有语法或其他错误的情况下工作)。

按照您定义字典的方式,它实际上调用了
showPilots()
函数、
addPilot()
函数等

我认为字典旨在保存函数对象,但实际上并没有调用它们:

然后你会这样称呼它:

# get the function we are supposed to call
f = execChoice(user_input)
# now execute the function
f()

“S”:showPilots,
获取字符串=>函数而不是函数调用。然后,还有很多其他错误。
choice=[]当choice为真时:
:不进入循环好的,我应该用什么来替换它们?我正在学习Python,所以这让我有点走样。你看过我在评论你之前(删除的)问题时建议的教程吗?是的。我还没弄明白。好吧,太棒了!这就是我要找的。非常感谢你!我不确定我是否正确地执行了if语句,这取决于上面的内容。你知道我需要为while循环做些什么吗?我要对这个极好的答案做的唯一补充是:在python中,风格指南是使用
snake\u case
来定义函数,而不是
mixedcapitalize
例如
def exec\u choice(choice):
# get the function we are supposed to call
f = execChoice(user_input)
# now execute the function
f()