如何在Python中获得两个变量的逻辑异或?

如何在Python中获得两个变量的逻辑异或?

例如,我有两个期望是字符串的变量。我想测试其中只有一个包含True值(不是None或空字符串):

str1 = raw_input("Enter string one:")

str2 = raw_input("Enter string two:")

if logical_xor(str1, str2):

print "ok"

else:

print "bad"

^运营商似乎是按位,并在所有对象没有定义:

>>> 1 ^ 1

0

>>> 2 ^ 1

3

>>> "abc" ^ ""

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

TypeError: unsupported operand type(s) for ^: 'str' and 'str'

回答:

如果你已经将输入标准化为布尔值,则!=xor

bool(a) != bool(b)

以上是 如何在Python中获得两个变量的逻辑异或? 的全部内容, 来源链接: utcz.com/qa/413735.html

回到顶部