Il existe différents opérateurs en Python qui sont utilisés dans tous les calculs et la syntaxe. Parmi eux, il existe un opérateur booléen en tant qu'opérateur qui est souvent utilisé principalement dans les expressions conditionnelles d'instructions if. L'opérateur booléen, également appelé opérateur logique, est utilisé lors de l'écriture d'expressions conditionnelles complexes dans le branchement conditionnel d'instructions if.
Cette fois, je vais vous expliquer comment utiliser l'opérateur booléen.
table des matières 1 [À propos et](À propos de ## et) 2 [À propos de ou](À propos de ## ou) 3 [About not](About ## not) 4 [Combiner et, ou, non](combiner ## et, ou, non) 5 Priorité de l'opérateur booléen (## Priorité de l'opérateur booléen)
et est un opérateur booléen, également appelé produit logique. La syntaxe de base de et est la suivante.
Expression conditionnelle 1 et expression conditionnelle 2
et prend les expressions conditionnelles à gauche et à droite, et renvoie true uniquement si le résultat des deux expressions conditionnelles est True. Si l'un ou l'autre est faux, il renvoie faux. En utilisant et, vous pouvez écrire une courte instruction if pour des conditions complexes.
Par exemple, supposons que vous souhaitiez récupérer uniquement les nombres de 100 à moins de 200 à partir d'une liste de nombres. Si et n'est pas utilisé, l'instruction if sera la suivante.
list = [30, 256, 125, 167, 45, 401]
for number in list:
if(number >= 100):
if(number < 200):
print(number)
Résultat d'exécution
125 167
Cet exemple a une liste courte et des conditions moins compliquées, mais il utilise toujours l'instruction if deux fois. Plus les conditions sont complexes, plus les instructions if et plus il est difficile de lire le code. Si vous utilisez et dans un tel cas, vous pouvez l'écrire très brièvement.
list = [30, 256, 125, 167, 45, 401]
for number in list:
if(number >= 100 and number < 200):
print(number)
Résultat d'exécution
125 167
Dans ce cas, et renvoie True uniquement lorsque le nombre est égal ou supérieur à 100 et inférieur à 200 et que le contenu de l'instruction if est exécuté. En utilisant et, l'instruction if a été réduite de un et le code a été actualisé.
ou est un opérateur booléen, également appelé somme logique. La syntaxe de base de ou est la suivante.
Expression conditionnelle 1 ou expression conditionnelle 2
Et signifie que l'expression entière est True uniquement lorsque les deux expressions conditionnelles sont True, mais ou signifie que l'expression entière est True si l'une des deux expressions conditionnelles est True.
En utilisant l'exemple précédent, il est utilisé lors de l'affichage des éléments avec des nombres 100 ou moins ou 200 ou plus.
list = [30, 256, 125, 167, 45, 401]
for number in list:
if(number < 100 or number >= 200):
print(number)
Résultat d'exécution
30 256 45 401
Dans cet exemple, si le nombre est inférieur à 100 ou si le nombre est égal ou supérieur à 200 est True, l'expression entière sera True et le contenu de l'instruction if sera exécuté.
not est un opérateur booléen, également appelé négation. La syntaxe de base de not est la suivante.
expression non conditionnelle
not signifie que si l'expression conditionnelle est True, l'expression entière sera False. En utilisant l'exemple précédent, il est utilisé lors de la sortie uniquement de nombres non pairs.
for number in list:
if(not number % 2 == 0):
print(number)
Résultat d'exécution
125 167 45 401
Jusqu'à présent, nous avons introduit trois types d'opérateurs booléens, et, ou, et non, mais vous pouvez également combiner ces opérateurs pour créer des expressions conditionnelles plus complexes.
Par exemple, l'expression conditionnelle selon laquelle le nombre est inférieur à 300 et n'est pas divisible par 3 est la suivante.
list = [30, 256, 125, 167, 45, 401]
for number in list:
if(number < 300 and not number % 3 == 0):
print(number)
Résultat d'exécution
256 125 167
Les opérateurs de langage Python ont la priorité. Par exemple, si + (somme) et * (produit) sont présents en même temps, * a la priorité.
answer = 2 * 3 + 7
print(answer)
Résultat d'exécution
13
Les opérateurs booléens ont des priorités similaires. Parmi les opérateurs booléens, not a la priorité la plus élevée, suivi de et, ou. Par conséquent, lorsque vous utilisez une combinaison d'opérateurs booléens, si vous ne faites pas attention à la priorité, cela peut ne pas fonctionner comme prévu.
Par exemple, supposons que vous souhaitiez récupérer «moins de 100 ou plus de 200» et «pair».
list = [30, 256, 125, 167, 45, 401]
for number in list:
if(number < 100 or number >= 200 and number % 2 == 0):
print(number)
Résultat d'exécution
30 256 45
L'expression conditionnelle semble être correcte à première vue, mais pour une raison quelconque, 45, qui n'est pas un nombre pair, est également sortie. Cela est dû au fait que et a une priorité plus élevée que ou, si l'expression conditionnelle devient "un nombre supérieur ou égal à 200 et même ou inférieur à 100". Pour obtenir cette expression correcte, utilisez () pour modifier la priorité.
list = [30, 256, 125, 167, 45, 401]
for number in list:
if( (number < 100 or number >= 200) and number % 2 == 0):
print(number)
Résultat d'exécution
30 256
Recommended Posts