所以我正在做一个基本的真值表功能。在此示例中,公式具有4个值,因此需要4个循环。我可以通过定义公式中的值数量并为其循环的def吗?
def Formula1(a,b,c,d):
return ((a & c) | (b & c) | (d & c))
for a in range(0,2):
for b in range(0,2):
for c in range(0, 2):
for d in range(0, 2):
#printtable(a,b,c,d)
print(a,b,c,d,"=",Formula1(a,b,c,d))
例如,这里的公式有5个值,需要5个循环。
def Formula2(a,b,c,d,e):
return ((not a & b) | (c & b) | (d & (not e)))
答案 0 :(得分:2)
使用t = threading.Thread(target=myfunc).start()
:
itertools
结果(import itertools
def Formula1(a, b, c, d):
return ((a & c) | (b & c) | (d & c))
if __name__ == '__main__':
table = list(itertools.product([False, True], repeat=4))
for a,b,c,d in table:
print("{}, {}, {}, {} = {}".format(a, b, c, d, Formula1(a, b, c, d))
是所有组合):
table