简体   繁体   English

我还能用什么来代替 python 中的 elif、if、else 语句?

[英]What else can I use instead of elif, if , else statements in python?

Hello everyone ı wonder what else we can use instead of elif, if , else statements?大家好,我想知道我们还可以使用什么来代替 elif、if、else 语句? or how can ı change given if , elif , else statement to any other method..或者如何将给定的 if 、 elif 、 else 语句更改为任何其他方法..

Assume that ı have voice assistant like this;假设我有这样的语音助手;

webb = ["open web browser","web browser", "open browser"]
thkns = ["thank you","thank you so much", "thanks"]
fav_web = ["open my favourite web site","favourite web site","my best web site"]
hwaru = ["how are you", "what's up", "how is going"]
thtime = ["whats the time" , "the time", "time"]

def assistant(command):
    if command in webb:
        talkMe("Opening your web browser")
        webbrowser.open("https://www.google.com.tr")

    elif command in thkns: 
        talkMe("You are welcome")


    elif command in fav_web:
        talkMe("Opening your site")
        webbrowser.open("www.stackoverflow.com")

    elif command in hwaru: 
        msg = ["ı am good, you?", "good", "not bad"]
        talkMe(random.choice(msg))


    elif command in thtime:
        strTime = datetime.datetime.now().strftime("%H:%M:%S")
        talkMe(f"The time is {strTime} ")

so I wonder, What else do I try instead of elif?所以我想知道,除了 elif,我还能尝试什么? Can you please explain to me?你能给我解释一下吗? ı know elif , if , and else statements.In this case if I want to write other command ı have to write;我知道 elif 、 if 和 else 语句。在这种情况下,如果我想写其他命令,我必须写;

elif command in "":
    talkMe("")
    do some """

elif command in "": 
    """"

and so on.. so that rows are too many can ı make the codes more shorter instead of elif statements?等等..所以行太多可以让代码更短而不是 elif 语句吗? or should i continue like this?还是我应该继续这样?

看起来你可以使用字典。

d = {'Hello Google': obj1, 'open my favourite web site': obj2}

You can use dictionary.您可以使用字典。 Here is complete example这是完整的例子

def switch_demo(argument):
    switcher = {
        "open web browser": "Opening your web browser",
        "web browser": "Opening your web browser",
        "open browser": "Opening your web browser",
        "thank you": "You are welcome",
        "thank you so much": "You are welcome",
        "thanks": "You are welcome"
    }
    print(switcher.get(argument, "Invalid Command"))

command = "thank you"
switch_demo(command)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM