Boucles While
Les boucles while
sont l’outil principal pour gérer l’itération indéfinie, utile dans les situations où le nombre d’itérations n’est pas connu à l’avance, comme le suivi des niveaux de stock jusqu’à atteindre un seuil spécifique.
Regardez Alex démontrer comment utiliser les boucles while
pour gérer des situations dynamiques :
Une boucle while
en Python exécute en continu un bloc de code tant qu’une condition spécifiée reste True
.
Syntaxe
Pour démarrer une boucle while
, il faut définir une variable de compteur puis utiliser le mot-clé while
suivi d’une condition booléenne. La condition est suivie d’un deux-points :
, qui indique le début du bloc de code de la boucle.
La boucle s’exécutera de façon répétée jusqu’à ce que la condition devienne False
. En général, la variable de compteur est mise à jour à l’intérieur de la boucle afin de rendre la condition False
et d’arrêter la boucle.
Considérez par exemple cette boucle while
:
1234567891011# Handling a queue at a grocery store checkout queue_length = 5 # Initial number of people in the queue while queue_length > 0: # Start the `while` loop as long as the queue isn't empty print(f"Current queue size: {queue_length}") # Simulate serving a customer print("Serving the next customer...") # Decrease the queue length by 1 as a customer leaves # The `-=` operator is a shortcut for `queue_length = queue_length - 1` queue_length -= 1
Dans cet exemple, queue_length
agit comme notre variable de compteur, débutant à 5
. À chaque itération de la boucle, la valeur de queue_length
diminue de 1
jusqu'à atteindre 0
. À ce moment-là, la boucle se termine car la condition 0 > 0
s'évalue à False
.
Remarque
Il est essentiel de mettre à jour la variable de compteur à l'intérieur de la boucle afin de satisfaire la condition d'arrêt de la boucle. Sans cela, la boucle s'exécutera indéfiniment, empêchant l'exécution du reste du code.
Exemple d'application
Supposons que vous gériez le stock de lait dans une épicerie. Il est nécessaire de s'assurer que le stock ne descende pas en dessous d'un certain seuil, et lorsqu'il le fait, il faut réapprovisionner pour maintenir le niveau de stock.
Une boucle while
est utile dans cette situation car elle permet de réapprovisionner le lait par incréments sur plusieurs itérations jusqu'à atteindre le niveau souhaité. Sans boucle while
, il faudrait calculer la quantité exacte de lait à réapprovisionner en une seule fois.
Par exemple, considérez qu'un employé du magasin ne peut réapprovisionner qu'une quantité fixe de lait à chaque trajet (par exemple, 20
packs par réapprovisionnement). Si le stock n'est pas entièrement reconstitué, l'employé retourne à l'entrepôt pour apporter un autre lot de lait.
123456789101112131415161718# Initial amount of milk in stock milk_stock = 15 # Minimum stock level before restocking is necessary min_stock = 50 # Quantity a worker can restock at one time restock_quantity = 20 # Start the loop to restock milk until the stock exceeds the minimum required level while milk_stock < min_stock: # If the loop is running, the condition is `True`, indicating we need more milk print(f"Milk stock is low: {milk_stock} units remaining.") # Simulate the process of restocking milk print("Restocking milk...") # Increase the stock by the quantity the worker can bring in one trip milk_stock += restock_quantity # Output the final stock level after restocking is complete print(f"Milk stock updated: {milk_stock} units, which is now sufficient.")
Remarque
milk_stock += restock_quantity
est équivalent àmilk_stock = milk_stock + restock_quantity
. Il s'agit simplement d'une manière plus concise et lisible d'exprimer la même opération.
.png?w=3840&q=75)
Le diagramme de flux ci-dessus illustre la logique derrière la boucle while
utilisée pour gérer l'inventaire de lait. Remarquez comment la variable de compteur milk_stock
, initialisée à 15
, est incrémentée par restock_quantity
à chaque itération de la boucle.
La boucle continue de s'exécuter jusqu'à ce que milk_stock
dépasse le seuil min_stock
de 50
, moment auquel elle s'arrête.
Swipe to start coding
Gérer l'inventaire d'une épicerie en utilisant des boucles while pour s'assurer que Bread
, Eggs
et Apples
atteignent leurs niveaux de stock minimum. Les quantités de réapprovisionnement sont stockées dans un dictionnaire.
- Utiliser une boucle
while
pour vérifier si"Bread"
est en dessous de son stock minimum. Le cas échéant, augmenter son stock en utilisant la quantité de réapprovisionnement correspondante depuis le dictionnaire. - Répéter la même logique pour
"Eggs"
et"Apples"
, chacune avec sa propre bouclewhile
. - Après le réapprovisionnement, parcourir le dictionnaire
inventory
à l'aide d'une bouclefor
et afficher les niveaux de stock finaux pour tous les articles.
Exigences de sortie
- Pour chaque article réapprovisionné, afficher :
"<Item> stock is low: <$current_stock> units. Restocking..."
- Après tous les réapprovisionnements, afficher
Final Inventory after restocking:
suivi des niveaux de stock mis à jour :
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
- Insérer une nouvelle ligne avant l'inventaire final en utilisant
\n
. - Utiliser des f-strings pour la mise en forme et des guillemets simples à l'intérieur des chaînes entre guillemets doubles pour les clés du dictionnaire.
Remarque
Pour éviter les conflits de syntaxe dans les f-strings, utiliser des guillemets doubles autour de la chaîne et des guillemets simples à l'intérieur :
f"Bread stock is low: {inventory['Bread'][0]} units."
Utiliser\n
pour commencer une nouvelle ligne dans la sortie :"First line.\nSecond line."
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 2.17
Boucles While
Glissez pour afficher le menu
Les boucles while
sont l’outil principal pour gérer l’itération indéfinie, utile dans les situations où le nombre d’itérations n’est pas connu à l’avance, comme le suivi des niveaux de stock jusqu’à atteindre un seuil spécifique.
Regardez Alex démontrer comment utiliser les boucles while
pour gérer des situations dynamiques :
Une boucle while
en Python exécute en continu un bloc de code tant qu’une condition spécifiée reste True
.
Syntaxe
Pour démarrer une boucle while
, il faut définir une variable de compteur puis utiliser le mot-clé while
suivi d’une condition booléenne. La condition est suivie d’un deux-points :
, qui indique le début du bloc de code de la boucle.
La boucle s’exécutera de façon répétée jusqu’à ce que la condition devienne False
. En général, la variable de compteur est mise à jour à l’intérieur de la boucle afin de rendre la condition False
et d’arrêter la boucle.
Considérez par exemple cette boucle while
:
1234567891011# Handling a queue at a grocery store checkout queue_length = 5 # Initial number of people in the queue while queue_length > 0: # Start the `while` loop as long as the queue isn't empty print(f"Current queue size: {queue_length}") # Simulate serving a customer print("Serving the next customer...") # Decrease the queue length by 1 as a customer leaves # The `-=` operator is a shortcut for `queue_length = queue_length - 1` queue_length -= 1
Dans cet exemple, queue_length
agit comme notre variable de compteur, débutant à 5
. À chaque itération de la boucle, la valeur de queue_length
diminue de 1
jusqu'à atteindre 0
. À ce moment-là, la boucle se termine car la condition 0 > 0
s'évalue à False
.
Remarque
Il est essentiel de mettre à jour la variable de compteur à l'intérieur de la boucle afin de satisfaire la condition d'arrêt de la boucle. Sans cela, la boucle s'exécutera indéfiniment, empêchant l'exécution du reste du code.
Exemple d'application
Supposons que vous gériez le stock de lait dans une épicerie. Il est nécessaire de s'assurer que le stock ne descende pas en dessous d'un certain seuil, et lorsqu'il le fait, il faut réapprovisionner pour maintenir le niveau de stock.
Une boucle while
est utile dans cette situation car elle permet de réapprovisionner le lait par incréments sur plusieurs itérations jusqu'à atteindre le niveau souhaité. Sans boucle while
, il faudrait calculer la quantité exacte de lait à réapprovisionner en une seule fois.
Par exemple, considérez qu'un employé du magasin ne peut réapprovisionner qu'une quantité fixe de lait à chaque trajet (par exemple, 20
packs par réapprovisionnement). Si le stock n'est pas entièrement reconstitué, l'employé retourne à l'entrepôt pour apporter un autre lot de lait.
123456789101112131415161718# Initial amount of milk in stock milk_stock = 15 # Minimum stock level before restocking is necessary min_stock = 50 # Quantity a worker can restock at one time restock_quantity = 20 # Start the loop to restock milk until the stock exceeds the minimum required level while milk_stock < min_stock: # If the loop is running, the condition is `True`, indicating we need more milk print(f"Milk stock is low: {milk_stock} units remaining.") # Simulate the process of restocking milk print("Restocking milk...") # Increase the stock by the quantity the worker can bring in one trip milk_stock += restock_quantity # Output the final stock level after restocking is complete print(f"Milk stock updated: {milk_stock} units, which is now sufficient.")
Remarque
milk_stock += restock_quantity
est équivalent àmilk_stock = milk_stock + restock_quantity
. Il s'agit simplement d'une manière plus concise et lisible d'exprimer la même opération.
.png?w=3840&q=75)
Le diagramme de flux ci-dessus illustre la logique derrière la boucle while
utilisée pour gérer l'inventaire de lait. Remarquez comment la variable de compteur milk_stock
, initialisée à 15
, est incrémentée par restock_quantity
à chaque itération de la boucle.
La boucle continue de s'exécuter jusqu'à ce que milk_stock
dépasse le seuil min_stock
de 50
, moment auquel elle s'arrête.
Swipe to start coding
Gérer l'inventaire d'une épicerie en utilisant des boucles while pour s'assurer que Bread
, Eggs
et Apples
atteignent leurs niveaux de stock minimum. Les quantités de réapprovisionnement sont stockées dans un dictionnaire.
- Utiliser une boucle
while
pour vérifier si"Bread"
est en dessous de son stock minimum. Le cas échéant, augmenter son stock en utilisant la quantité de réapprovisionnement correspondante depuis le dictionnaire. - Répéter la même logique pour
"Eggs"
et"Apples"
, chacune avec sa propre bouclewhile
. - Après le réapprovisionnement, parcourir le dictionnaire
inventory
à l'aide d'une bouclefor
et afficher les niveaux de stock finaux pour tous les articles.
Exigences de sortie
- Pour chaque article réapprovisionné, afficher :
"<Item> stock is low: <$current_stock> units. Restocking..."
- Après tous les réapprovisionnements, afficher
Final Inventory after restocking:
suivi des niveaux de stock mis à jour :
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
- Insérer une nouvelle ligne avant l'inventaire final en utilisant
\n
. - Utiliser des f-strings pour la mise en forme et des guillemets simples à l'intérieur des chaînes entre guillemets doubles pour les clés du dictionnaire.
Remarque
Pour éviter les conflits de syntaxe dans les f-strings, utiliser des guillemets doubles autour de la chaîne et des guillemets simples à l'intérieur :
f"Bread stock is low: {inventory['Bread'][0]} units."
Utiliser\n
pour commencer une nouvelle ligne dans la sortie :"First line.\nSecond line."
Solution
Merci pour vos commentaires !
single