在python中使用if的有效方法

在python中使用if的有效方法,python,python-3.x,Python,Python 3.x,我是python的初学者(我使用的是python 3.7.4),在编写代码时,在“if”语句中应用条件时,我会遇到一个乏味的情况,如下代码所示: from array import * ans = array('i') for a in range(10): for b in range(10): for c in range(10): if a == 5 or b == 5 or c == 5: ans.ap

我是python的初学者(我使用的是python 3.7.4),在编写代码时,在“if”语句中应用条件时,我会遇到一个乏味的情况,如下代码所示:

from array import *
ans = array('i')

for a in range(10):
    for b in range(10):
        for c in range(10):
             if a == 5 or b == 5 or c == 5:
                 ans.append(100 * a + 10 * b + c)

for x in ans:
    print(x)


对此,我尝试通过将if语句行替换为以下内容来尝试解决方案:

if (a or b or c) == 2:
但我不幸失败了。有人能告诉我这是怎么回事吗?谁能为我的问题提供最好的解决方案?我只展示了一个条件的例子,而我必须给出许多这样的条件。
谢谢你提前回答我的问题

您可以尝试替换以下语句

if a == 5 or b == 5 or c == 5:

请注意,此可能不适用于所有python类型

>>> a = 1
>>> b = 2
>>> c = 3
>>> 2 in [a, b, c]
True
>>> 4 in [a, b, c]
False

>>> a = [1]
>>> b = [2]
>>> c = [3]
>>> [3] in [a, b, c]
True
>>> 3 in [a, b, c]
False
>>> [4] in [a, b, c]
False

您可以尝试替换以下语句

if a == 5 or b == 5 or c == 5:

请注意,此可能不适用于所有python类型

>>> a = 1
>>> b = 2
>>> c = 3
>>> 2 in [a, b, c]
True
>>> 4 in [a, b, c]
False

>>> a = [1]
>>> b = [2]
>>> c = [3]
>>> [3] in [a, b, c]
True
>>> 3 in [a, b, c]
False
>>> [4] in [a, b, c]
False

这对你有用

cond1=1
cond2=5
cond3=7
cond4=3

if (cond1 == 5 or cond2 == 5 or 
       cond3 == 5 or cond4 == 5) :
    print(cond1*cond4)

else :
    print("hello")

这对你有用

cond1=1
cond2=5
cond3=7
cond4=3

if (cond1 == 5 or cond2 == 5 or 
       cond3 == 5 or cond4 == 5) :
    print(cond1*cond4)

else :
    print("hello")

你要用另一个来替换那个简单的条件吗?你要用另一个来替换那个简单的条件吗?把那些大括号卷曲成一组。此外,每次都会重新初始化列表。如果是
集合
,则带有
列表
的第二个示例将不起作用,他将得到一个“TypeError:unhabable type:'list'”。我从未见过用作搜索键的列表。但是我看到一个元组被用来做这个。这是
True
:)把大括号卷曲成一个集合。此外,每次都会重新初始化列表。如果是
集合
,则带有
列表
的第二个示例将不起作用,他将得到一个“TypeError:unhabable type:'list'”。我从未见过用作搜索键的列表。但我看到一个元组被用于此。这是
True
:)