While-Schleifen
while
-Schleifen sind das zentrale Werkzeug für die unbestimmte Iteration, was in Situationen nützlich ist, in denen die Anzahl der Durchläufe im Voraus nicht bekannt ist, wie zum Beispiel beim Überwachen von Lagerbeständen, bis ein bestimmter Schwellenwert erreicht wird.
Sehen Sie, wie Alex demonstriert, wie while
-Schleifen verwendet werden, um dynamische Situationen zu bewältigen:
Eine while
-Schleife in Python führt einen Codeblock kontinuierlich aus, solange eine bestimmte Bedingung True
bleibt.
Syntax
Um eine while
-Schleife zu beginnen, wird eine Zählvariable definiert, gefolgt vom Schlüsselwort while
und einer booleschen Bedingung. Auf die Bedingung folgt ein Doppelpunkt :
, der den Beginn des Schleifenblocks kennzeichnet.
Die Schleife wird wiederholt ausgeführt, bis die Bedingung False
wird. Typischerweise wird die Zählvariable innerhalb der Schleife aktualisiert, um die Bedingung schließlich auf False
zu setzen und die Schleife zu beenden.
Betrachten Sie zum Beispiel diese while
-Schleife:
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
In diesem Beispiel fungiert queue_length
als Zählvariable und startet bei 5
. Mit jeder Schleifeniteration verringert sich der Wert von queue_length
um 1
, bis er 0
erreicht. Zu diesem Zeitpunkt endet die Schleife, da die Bedingung 0 > 0
als False
ausgewertet wird.
Hinweis
Es ist entscheidend, die Zählvariable innerhalb der Schleife zu aktualisieren, um schließlich die Abbruchbedingung der Schleife zu erfüllen. Andernfalls läuft die Schleife endlos weiter und verhindert die Ausführung des restlichen Codes.
Anwendungsbeispiel
Stellen Sie sich vor, Sie verwalten den Milchbestand in einem Lebensmittelgeschäft. Sie müssen sicherstellen, dass der Bestand nicht unter ein bestimmtes Niveau fällt, und wenn dies geschieht, sollten Sie nachfüllen, um das Bestandsniveau zu halten.
Eine while
-Schleife ist in dieser Situation nützlich, da sie es ermöglicht, Milch in mehreren Schritten nachzufüllen, bis der gewünschte Bestand erreicht ist. Ohne eine while
-Schleife müssten Sie die genaue Menge an Milch berechnen, die auf einmal nachgefüllt werden muss.
Angenommen, ein Mitarbeiter kann pro Gang nur eine feste Menge Milch nachfüllen (z. B. 20
Packungen pro Nachfüllung). Wenn der Bestand noch nicht vollständig aufgefüllt ist, kehrt der Mitarbeiter ins Lager zurück, um eine weitere Charge Milch zu holen.
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.")
Hinweis
milk_stock += restock_quantity
ist gleichbedeutend mitmilk_stock = milk_stock + restock_quantity
. Es handelt sich lediglich um eine kürzere und besser lesbare Schreibweise für dieselbe Operation.
.png?w=3840&q=75)
Das obige Flussdiagramm veranschaulicht die Logik hinter der while
-Schleife zur Verwaltung des Milchbestands. Beachten Sie, wie die Zählvariable milk_stock
, beginnend bei 15
, mit jeder Schleifeniteration um die restock_quantity
erhöht wird.
Die Schleife läuft so lange, bis milk_stock
den min_stock
Schwellenwert von 50
überschreitet, woraufhin sie beendet wird.
Swipe to start coding
Verwalten Sie den Lagerbestand eines Lebensmittelgeschäfts mithilfe von while-Schleifen, um sicherzustellen, dass Bread
, Eggs
und Apples
ihre Mindestbestände erreichen. Die Nachfüllmengen sind in einem Dictionary gespeichert.
- Verwenden Sie eine
while
-Schleife, um zu prüfen, ob"Bread"
unter dem Mindestbestand liegt. Falls ja, erhöhen Sie den Bestand mit der entsprechenden Nachfüllmenge aus dem Dictionary. - Wenden Sie die gleiche Logik für
"Eggs"
und"Apples"
an, jeweils mit einer eigenenwhile
-Schleife. - Durchlaufen Sie nach dem Auffüllen das
inventory
-Dictionary mit einerfor
-Schleife und geben Sie die endgültigen Bestände aller Artikel aus.
Ausgabekriterien
- Für jeden aufgefüllten Artikel ausgeben:
"<Item> stock is low: <$current_stock> units. Restocking..."
- Nach dem Auffüllen aller Artikel ausgeben:
Final Inventory after restocking:
gefolgt von den aktualisierten Beständen:
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
- Fügen Sie vor dem endgültigen Lagerbestand eine neue Zeile mit
\n
ein. - Verwenden Sie f-strings für die Formatierung und einfache Anführungszeichen innerhalb von doppelten Anführungszeichen für Dictionary-Schlüssel.
Hinweis
Um Syntaxkonflikte in f-strings zu vermeiden, verwenden Sie doppelte Anführungszeichen um den String und einfache Anführungszeichen im Inneren:
f"Bread stock is low: {inventory['Bread'][0]} units."
Verwenden Sie\n
, um eine neue Zeile in der Ausgabe zu beginnen:"First line.\nSecond line."
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you explain what would happen if we forgot to update the counter variable inside the while loop?
How can I use a while loop for user input validation?
Can you show another real-world example where a while loop is useful?
Awesome!
Completion rate improved to 2.17
While-Schleifen
Swipe um das Menü anzuzeigen
while
-Schleifen sind das zentrale Werkzeug für die unbestimmte Iteration, was in Situationen nützlich ist, in denen die Anzahl der Durchläufe im Voraus nicht bekannt ist, wie zum Beispiel beim Überwachen von Lagerbeständen, bis ein bestimmter Schwellenwert erreicht wird.
Sehen Sie, wie Alex demonstriert, wie while
-Schleifen verwendet werden, um dynamische Situationen zu bewältigen:
Eine while
-Schleife in Python führt einen Codeblock kontinuierlich aus, solange eine bestimmte Bedingung True
bleibt.
Syntax
Um eine while
-Schleife zu beginnen, wird eine Zählvariable definiert, gefolgt vom Schlüsselwort while
und einer booleschen Bedingung. Auf die Bedingung folgt ein Doppelpunkt :
, der den Beginn des Schleifenblocks kennzeichnet.
Die Schleife wird wiederholt ausgeführt, bis die Bedingung False
wird. Typischerweise wird die Zählvariable innerhalb der Schleife aktualisiert, um die Bedingung schließlich auf False
zu setzen und die Schleife zu beenden.
Betrachten Sie zum Beispiel diese while
-Schleife:
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
In diesem Beispiel fungiert queue_length
als Zählvariable und startet bei 5
. Mit jeder Schleifeniteration verringert sich der Wert von queue_length
um 1
, bis er 0
erreicht. Zu diesem Zeitpunkt endet die Schleife, da die Bedingung 0 > 0
als False
ausgewertet wird.
Hinweis
Es ist entscheidend, die Zählvariable innerhalb der Schleife zu aktualisieren, um schließlich die Abbruchbedingung der Schleife zu erfüllen. Andernfalls läuft die Schleife endlos weiter und verhindert die Ausführung des restlichen Codes.
Anwendungsbeispiel
Stellen Sie sich vor, Sie verwalten den Milchbestand in einem Lebensmittelgeschäft. Sie müssen sicherstellen, dass der Bestand nicht unter ein bestimmtes Niveau fällt, und wenn dies geschieht, sollten Sie nachfüllen, um das Bestandsniveau zu halten.
Eine while
-Schleife ist in dieser Situation nützlich, da sie es ermöglicht, Milch in mehreren Schritten nachzufüllen, bis der gewünschte Bestand erreicht ist. Ohne eine while
-Schleife müssten Sie die genaue Menge an Milch berechnen, die auf einmal nachgefüllt werden muss.
Angenommen, ein Mitarbeiter kann pro Gang nur eine feste Menge Milch nachfüllen (z. B. 20
Packungen pro Nachfüllung). Wenn der Bestand noch nicht vollständig aufgefüllt ist, kehrt der Mitarbeiter ins Lager zurück, um eine weitere Charge Milch zu holen.
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.")
Hinweis
milk_stock += restock_quantity
ist gleichbedeutend mitmilk_stock = milk_stock + restock_quantity
. Es handelt sich lediglich um eine kürzere und besser lesbare Schreibweise für dieselbe Operation.
.png?w=3840&q=75)
Das obige Flussdiagramm veranschaulicht die Logik hinter der while
-Schleife zur Verwaltung des Milchbestands. Beachten Sie, wie die Zählvariable milk_stock
, beginnend bei 15
, mit jeder Schleifeniteration um die restock_quantity
erhöht wird.
Die Schleife läuft so lange, bis milk_stock
den min_stock
Schwellenwert von 50
überschreitet, woraufhin sie beendet wird.
Swipe to start coding
Verwalten Sie den Lagerbestand eines Lebensmittelgeschäfts mithilfe von while-Schleifen, um sicherzustellen, dass Bread
, Eggs
und Apples
ihre Mindestbestände erreichen. Die Nachfüllmengen sind in einem Dictionary gespeichert.
- Verwenden Sie eine
while
-Schleife, um zu prüfen, ob"Bread"
unter dem Mindestbestand liegt. Falls ja, erhöhen Sie den Bestand mit der entsprechenden Nachfüllmenge aus dem Dictionary. - Wenden Sie die gleiche Logik für
"Eggs"
und"Apples"
an, jeweils mit einer eigenenwhile
-Schleife. - Durchlaufen Sie nach dem Auffüllen das
inventory
-Dictionary mit einerfor
-Schleife und geben Sie die endgültigen Bestände aller Artikel aus.
Ausgabekriterien
- Für jeden aufgefüllten Artikel ausgeben:
"<Item> stock is low: <$current_stock> units. Restocking..."
- Nach dem Auffüllen aller Artikel ausgeben:
Final Inventory after restocking:
gefolgt von den aktualisierten Beständen:
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
- Fügen Sie vor dem endgültigen Lagerbestand eine neue Zeile mit
\n
ein. - Verwenden Sie f-strings für die Formatierung und einfache Anführungszeichen innerhalb von doppelten Anführungszeichen für Dictionary-Schlüssel.
Hinweis
Um Syntaxkonflikte in f-strings zu vermeiden, verwenden Sie doppelte Anführungszeichen um den String und einfache Anführungszeichen im Inneren:
f"Bread stock is low: {inventory['Bread'][0]} units."
Verwenden Sie\n
, um eine neue Zeile in der Ausgabe zu beginnen:"First line.\nSecond line."
Lösung
Danke für Ihr Feedback!
single