どうやって論理排他的論理和Python で 2 つの変数を使用するには?
たとえば、文字列であると予想される変数が 2 つあります。そのうちの 1 つだけに 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'
ベストアンサー1
すでに入力をブール値に正規化している場合は、!= は xor になります。
bool(a) != bool(b)