Python での 2 つの変数の論理 XOR の決定
Python で 2 つの変数の排他的論理和 (XOR) を評価するには、^オペレーターを雇用することも可能です。ただし、この演算子はビット単位の XOR 演算を実行するため、すべてのデータ型と互換性があるわけではないことに注意することが重要です。たとえば、^ 演算子を 2 つの文字列に適用すると、TypeError が発生します。
この問題に対処する適切な解決策は、まず入力変数をブール値に変換することです。 2 つのブール変数の論理 XOR は、!= 演算子を使用して取得できます。これは、2 つのブール値が異なる場合は != 演算子が True と評価され、異なる場合は False と評価されるためです。
このアプローチを示す例を次に示します。
<code class="python">str1 = input("Enter string one: ") str2 = input("Enter string two: ") if bool(str1) != bool(str2): print("ok") else: print("bad")</code>
この例では、入力文字列は bool() 関数を使用してブール値に変換されます。次に、!= 演算子が結果のブール値に適用され、論理 XOR が評価されます。入力文字列の 1 つのみに True 値 (None または空の文字列ではない) が含まれている場合、プログラムは「ok」を出力します。それ以外の場合は、「悪い」と出力されます。
以上がPython で 2 つの変数の論理 XOR を求める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。