python检查m个方法中的n个返回值是否为真

标签 python python-2.7 python-3.x

我已经编写了 5 个方法来执行一些操作,并根据这些操作返回 TrueFalse。通过调用这些方法,我将把返回值分配给单独的变量,我想比较这些返回值,如果 3 个方法中有 5 个返回 True,那么我必须做一些其他的事情,其他不同的事情。

def method1():
   # stuffs
   return True

def method2():
   #stuffs
   return False

def method3():
   #stuffs
   return True

def method4():
   #stuffs
   return True

def method5():
   #stuffs
   return True 

var1 = method1()
var2 = method2()
var3 = method3()
var4 = method4()
var5 = method5()

现在我必须对这些变量值进行比较,并且有 3 个变量值是 True,然后必须做一些事情。

我在 if 语句中找到了 not()any() 但这不适合我的情况。那么有没有其他功能可以帮助我推进它呢?

寻找适用于 python 2 和 3 的通用方法。

最佳答案

将所有方法的结果存储在一个列表中。 统计True的个数!

if [method1(),method2(),method3(),method4(),method5()].count(True) == n:
    pass

这应该可以! 希望对您有所帮助!

关于python检查m个方法中的n个返回值是否为真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42966788/

相关文章:

python - 提高缩小图像的准确性

python - 如何忽略传递给数据类的额外参数?

python - 尝试将列表添加到列表时出现 TypeError

python - 从调试器打印 python 中所有可用的元组

python - 如何检测图像中的纸板箱?

python - 用于部署单节点的 Storm 替代方案

python - 删除 matplotlib 图中的 xticks?

python - 为什么 Python 2.7 的输出与 Python 3.10 不同?

Python:知道函数是从单元测试调用的吗?

python - 使用带有 TEMPLATE.format() 的字典时出现关键错误