Inventaire - Valeur totale
valeur_totale_inventaire
qui calcule la valeur totale d'un inventaire de magasin.inventaire = {
'pommes': {'quantite': 50, 'prix': 2.5, 'categorie': 'fruits'},
'bananes': {'quantite': 30, 'prix': 1.8, 'categorie': 'fruits'},
'carottes': {'quantite': 25, 'prix': 1.2, 'categorie': 'legumes'}
}
La fonction doit calculer et retourner la valeur totale de l'inventaire (quantité × prix pour chaque produit).
def valeur_totale_inventaire(inventaire):
"""Calcule la valeur totale de l'inventaire"""
valeur_totale = 0
for produit, infos in inventaire.items():
valeur_totale += infos['quantite'] * infos['prix']
return valeur_totale
# Test
inventaire = {
'pommes': {'quantite': 50, 'prix': 2.5, 'categorie': 'fruits'},
'bananes': {'quantite': 30, 'prix': 1.8, 'categorie': 'fruits'},
'carottes': {'quantite': 25, 'prix': 1.2, 'categorie': 'legumes'}
}
print(f"Valeur totale: {valeur_totale_inventaire(inventaire)}€")
Inventaire - Produit le plus cher
produit_plus_cher
qui trouve le produit le plus cher dans l'inventaire.Utiliser le même dictionnaire inventaire
que l'exercice précédent.
La fonction doit retourner le nom du produit le plus cher et son prix.
def produit_plus_cher(inventaire):
"""Trouve le produit le plus cher"""
produit_cher = None
prix_max = 0
for produit, infos in inventaire.items():
if infos['prix'] > prix_max:
prix_max = infos['prix']
produit_cher = produit
return produit_cher, prix_max
# Test
produit, prix = produit_plus_cher(inventaire)
print(f"Produit le plus cher: {produit} ({prix}€)")
Inventaire - Filtrage par catégorie
produits_par_categorie
qui liste les produits d'une catégorie donnée.La fonction prend en paramètres l'inventaire et une catégorie, et retourne la liste des noms des produits de cette catégorie.
def produits_par_categorie(inventaire, categorie):
"""Liste les produits d'une catégorie donnée"""
produits = []
for produit, infos in inventaire.items():
if infos['categorie'] == categorie:
produits.append(produit)
return produits
# Test
fruits = produits_par_categorie(inventaire, 'fruits')
legumes = produits_par_categorie(inventaire, 'legumes')
print(f"Fruits: {fruits}")
print(f"Légumes: {legumes}")
Inventaire - Mise à jour des quantités
mettre_a_jour_quantite
qui met à jour la quantité d'un produit.La fonction prend en paramètres l'inventaire, le nom du produit et la nouvelle quantité.
Elle doit gérer le cas où le produit n'existe pas dans l'inventaire.
def mettre_a_jour_quantite(inventaire, produit, nouvelle_quantite):
"""Met à jour la quantité d'un produit"""
if produit in inventaire:
ancienne_quantite = inventaire[produit]['quantite']
inventaire[produit]['quantite'] = nouvelle_quantite
print(f"Quantité de {produit} mise à jour: {ancienne_quantite} → {nouvelle_quantite}")
return True
else:
print(f"Erreur: Le produit '{produit}' n'existe pas dans l'inventaire")
return False
# Test
mettre_a_jour_quantite(inventaire, 'pommes', 75)
mettre_a_jour_quantite(inventaire, 'oranges', 20) # Produit inexistant