Les opérateurs logiques
Présentation des opérateurs logiques
Les opérateurs logiques sont des outils fondamentaux en Python pour combiner et manipuler les valeurs booléennes. Ils vous permettent de créer des conditions complexes et de contrôler le flux du programme.
Les trois principaux opérateurs logiques
Python fournit trois principaux opérateurs logiques :
Opérateur |
Symbole |
Description |
ET |
and |
Retourne True si les deux conditions sont True |
OU |
or |
Retourne True si au moins une condition est True |
NON |
not |
Inverse la valeur booléenne |
Opérateur ET
L'opérateur and
exige que toutes les conditions soient True
:
## Exemples d'opérateur ET
x = 5
y = 10
z = 15
print(x < y and y < z) ## True
print(x > y and y < z) ## False
Opérateur OU
L'opérateur or
retourne True
si au moins une condition est True
:
## Exemples d'opérateur OU
is_weekend = False
is_holiday = True
print(is_weekend or is_holiday) ## True
print(False or False) ## False
Opérateur NON
L'opérateur not
inverse la valeur booléenne :
## Exemples d'opérateur NON
is_raining = False
print(not is_raining) ## True
is_sunny = True
print(not is_sunny) ## False
Expressions logiques complexes
Vous pouvez combiner plusieurs opérateurs logiques :
## Expressions logiques complexes
age = 25
has_license = True
is_insured = False
can_drive = age >= 18 and has_license and not is_insured
print(can_drive) ## True
Evaluation par court-circuit
Python utilise l'évaluation par court-circuit pour les opérateurs logiques :
## Evaluation par court-circuit
def is_valid_user(username):
return username and len(username) > 3
print(is_valid_user('')) ## False
print(is_valid_user('LabEx')) ## True
Précédence des opérateurs
graph TD
A[Précédence des opérateurs logiques] --> B[NON priorité la plus élevée]
A --> C[ET priorité moyenne]
A --> D[OU priorité la plus basse]
Bonnes pratiques
- Utilisez des parenthèses pour clarifier les conditions complexes
- Évitez les expressions logiques trop compliquées
- Découpez les conditions complexes en parties plus petites et lisibles
Exemple pratique
## Utilisation pratique des opérateurs logiques
def can_register_for_course(age, has_prerequisites, is_enrolled):
return (age >= 18) and has_prerequisites and not is_enrolled
## Logique d'inscription au cours LabEx
print(can_register_for_course(20, True, False)) ## True
print(can_register_for_course(17, True, False)) ## False
En maîtrisant ces opérateurs logiques, vous serez en mesure de créer une logique conditionnelle plus sophistiquée et précise dans vos programmes Python.