我通过python从Xor门得到了奇怪的结果
使用Python的函数定义,我创建了一个函数,当两个输入中只有一个为True时,该函数返回True我通过python从Xor门得到了奇怪的结果,python,xor,Python,Xor,使用Python的函数定义,我创建了一个函数,当两个输入中只有一个为True时,该函数返回True def xor(a,b): 如果a或b: 如果不是a和b: r=真 其他: r=假 其他: r=假 返回r 如果xor(真、假): 打印('是') 如果xor(真,真): 打印('否') 我思考的结果是 yes 但结果一无所获。 奇怪的是,没有错误,使用的逻辑是错误的。当两个输入都为false时,需要一个括号来检查 def xor(a,b): 如果a或b: 如果不是(a和b): r=真 其他:
def xor(a,b):
如果a或b:
如果不是a和b:
r=真
其他:
r=假
其他:
r=假
返回r
如果xor(真、假):
打印('是')
如果xor(真,真):
打印('否')
我思考的结果是
yes
但结果一无所获。
奇怪的是,没有错误,使用的逻辑是错误的。当两个输入都为false时,需要一个括号来检查
def xor(a,b):
如果a或b:
如果不是(a和b):
r=真
其他:
r=假
其他:
r=假
返回r
使用的逻辑错误。当两个输入都为false时,需要一个括号来检查
def xor(a,b):
如果a或b:
如果不是(a和b):
r=真
其他:
r=假
其他:
r=假
返回r
根据XOR
定义:
def xor(a,b):
返回(非a和b)或(a和非b)
或者:
def xor(a,b):
返回(a或b)和(非a或非b)
根据XOR
定义:
def xor(a,b):
返回(非a和b)或(a和非b)
或者:
def xor(a,b):
返回(a或b)和(非a或非b)
为什么不试试内置的xor运算符^
?例如:
为什么不试试内置的xor运算符
^
?例如:
>>> True ^ False
True
>>> False ^ False
False
>>> True ^ True
False
>>> False ^ True
True
>>>