Leçon 5 / 10 — Chapitre 8: Mise en pratique : gestion de stock
Rechercher un produit par nom, insensible à la casse
Cinquième étape : une fonction de recherche réutilisable, qui renvoie le produit trouvé (ou None si absent) plutôt que de lever une erreur — utile quand l'absence n'est pas forcément une erreur, juste une information à vérifier.
def rechercher_produit(inventaire, nom):
for produit in inventaire:
if produit["nom"].lower() == nom.lower():
return produit
return None
inventaire = [{"nom": "Riz", "prix": 5, "stock": 20}]
resultat = rechercher_produit(inventaire, "riz")
if resultat:
print("Trouve :", resultat["nom"])
else:
print("Produit introuvable")
Ce code affiche Trouve : Riz : rechercher_produit("riz") retrouve bien "Riz" dans l'inventaire grâce à .lower() sur les deux côtés de la comparaison, malgré la différence de casse.
Cette fonction renvoie directement le dictionnaire du produit trouvé (pas seulement True/False), ce qui permet d'enchaîner immédiatement une utilisation de ses informations, comme resultat["prix"], sans avoir à le rechercher une seconde fois.
À vous de jouer : utilisez rechercher_produit pour chercher un produit avec une casse différente de celle enregistrée (par exemple "RIZ" si le produit est stocké comme "Riz"), et vérifiez qu'il est bien trouvé.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 85 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès