我需要用Python编写一些代码,为以下语句生成一个真值表:p和q、p或q、if p然后q、p if和only if q
下面是一些我已经写过的代码,但是我不知道从这里到哪里去

def getSym(x):
    if x:
        return 'T'
    else:
        return 'F'

values = [True, False]

for p in values:
    for q in values:
        print(getSym(p), getSym(q), getSym(p and q))

我得到:
(T T T)
(T F F)
(F T F)
(F F F)

但我不知道如何得到最后一个输出,应该是(tftf)

最佳答案

你的方向是对的。你已经为和打印了真相表。

(T T T)
(T F F)
(F T F)
(F F F)

最后一列是和的真值表
类似地,您可以为其他逻辑操作打印真值表。请相应地更改打印报表。。
例如,For或,应该是
print(getSym(p), getSym(q), getSym(p or q))

10-07 15:11