Есть ли эффективный способ написать, если x этих переменных верны в Python? - PullRequest
0 голосов
/ 05 июня 2018

Я пишу программу, в которой мне нужно проверить, верно ли 2 из этих 4 логических значений.Очевидно, я могу выписать каждую комбинацию в операторе if, что достаточно легко для 4 (все это боль).Однако, если в задаче есть 100 переменных, и нужно знать, истинны ли хотя бы 2, то теперь у нас гораздо большая проблема.Есть ли более простое решение для этого?Есть ли модуль, который может сделать это для меня?Что если я хочу, чтобы хотя бы x было правдой?

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

предполагается, что логический массив равен data, тогда следующее число подсчитывает количество истинных значений

sum(data)

. Вы можете сравнить возвращенное значение с x

0 голосов
/ 05 июня 2018

Вы можете взять сумму из списка bools.Например,

a = True
b = True
c = False
d = False
e = True
f = False
g = False

bools = [a, b, c, d, e, f, g]

print(sum(bools))

Выходы 3.

Затем сравните это с любым числом, которое вы хотите, например, sum(bools) >= 2.

...