Python IF在一个语句中使用多个“和”“或”

发布于 2021-01-29 14:11:09

我只是想知道下面的if语句是否有效:

    value=[1,2,3,4,5,f]
    target = [1,2,3,4,5,6,f]
    if value[0] in target OR value[1] in target AND value[6] in target:
       print ("good")

我的目标是确保同时满足以下2个要求:1. value [6]必须位于目标2.目标中的value [0]或value
[1]如果我做了一个不好的例子,请道歉我的问题是,是否可以在一个语句中进行三个AND&OR?非常感谢!

关注者
0
被浏览
123
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    使用 括号 将条件分组:

    if value[6] in target and (value[0] in target or value[1] in target):
    

    请注意,in如果将定义target为一组,则可以在固定时间内进行查找:

    target = {1,2,3,4,5,6,f}
    

    并且,正如@Pramod在评论中提到的那样,在这种情况下value[6]将导致,IndexError因为其中仅定义了6个元素,value并且索引基于0。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看