有没有一种方法可以使条件句跨越多行?

2024-06-17 12:30:43 发布

您现在位置:Python中文网/ 问答频道 /正文

在我编写的一个基于文本的冒险中,我编写了IF语句以允许多行条件语句,如下所示:

    if certain_input == (
                       "examine bed" or "look at bed" or "look bed" or "look straw" or "inspect straw" or
                       "inspect bed" or "search bed" or "examine straw" or "look at straw"
                      ):
        print("this input has been fulfilled")

在这种格式中唯一起作用的条件是“检查床”和“检查床”。其他列出的每个选项在使用时都会返回一个错误。我有什么遗漏吗


Tags: or文本inputif语句条件at冒险
1条回答
网友
1楼 · 发布于 2024-06-17 12:30:43

尝试将所有这些项目放入列表,并使用in

option_lst = ["examine bed", "look at bed", "look bed", "look straw", "inspect straw", "inspect bed", "search bed", "examine straw", "look at straw"]
certain_input = "look at bed"
if certain_input in option_lst:
    print("this input has been fulfilled")

这使您的代码在将来更容易更改,也更优雅

顺便说一句,声明:

x = ("examine bed" or "look at bed" or "look bed" or "look straw" or "inspect straw" or
     "inspect bed" or "search bed" or "examine straw" or "look at straw")

返回"examine bed",因为"examine bed"不是空字符串,因此是truth like,所以只能与"examine bed"进行比较

相关问题 更多 >