Opération XOR en Python : au-delà de la logique au niveau des bits
Comprendre l'opération XOR logique en Python peut être délicat, en particulier lors de la comparaison de variables non booléennes comme des cordes. L'opérateur ^ au niveau du bit, couramment utilisé pour le XOR au niveau du bit, ne suffit pas à cet effet.
Solution : XOR booléen
Si l'objectif est de vérifier si exactement l'un des deux variables contient une valeur True, une solution simple est l’opérateur !=. Cela vérifie si les valeurs booléennes des deux variables diffèrent. Ainsi, pour les chaînes :
<code class="python">bool(str1) != bool(str2)</code>
Ceci renverra True si une variable n'est pas None ou une chaîne vide tandis que l'autre l'est, remplissant la condition XOR.
Exemple
En utilisant l'exemple de code :
<code class="python">str1 = input("Enter string one:") str2 = input("Enter string two:") if bool(str1) != bool(str2): print("ok") else: print("bad")</code>
Ce code déterminera correctement si une seule chaîne contient une valeur non vide et affichera "ok" dans ce cas.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!