Python returns 逻辑推论错误 table
Python returns wrong truth table for logical implication
我已经在 Python 中实现了上述含义,但它没有 return 预期的结果:
True True None
True False None
False True True
False False None
我的python代码是:
def implies(a,b):
if a:
return b
else:True
return
for p in (True, False):
for q in (True, False):
print("%10s %10s %s" %(p,q,implies((p or q) and (not p), q)))
我不明白这里的矛盾。 None 暗示 False 不是吗?为什么不打印 True 呢?
def implies(a,b):
if a:
return b
else:True
return
你的错误在最后两行,如果 !a,你没有返回特定的值,所以结果是 None
。
你想要:
def implies(a,b):
if a:
return b
else:
return True
我已经在 Python 中实现了上述含义,但它没有 return 预期的结果:
True True None
True False None
False True True
False False None
我的python代码是:
def implies(a,b):
if a:
return b
else:True
return
for p in (True, False):
for q in (True, False):
print("%10s %10s %s" %(p,q,implies((p or q) and (not p), q)))
我不明白这里的矛盾。 None 暗示 False 不是吗?为什么不打印 True 呢?
def implies(a,b):
if a:
return b
else:True
return
你的错误在最后两行,如果 !a,你没有返回特定的值,所以结果是 None
。
你想要:
def implies(a,b):
if a:
return b
else:
return True