Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer While-Lussen | Lussen
Introductie tot Python

Veeg om het menu te tonen

book
While-Lussen

while-lussen zijn het belangrijkste hulpmiddel voor het afhandelen van onbepaalde iteratie, wat nuttig is in situaties waarin het aantal iteraties niet vooraf bekend is, zoals het monitoren van voorraadniveaus totdat ze een specifieke drempel bereiken.

Bekijk hoe Alex demonstreert hoe je while-lussen gebruikt om dynamische situaties te beheren:

Een while-lus in Python voert herhaaldelijk een codeblok uit zolang een opgegeven voorwaarde True blijft.

Syntax

Om een while-lus te starten, definieer je een teller-variabele en gebruik je het sleutelwoord while gevolgd door een booleaanse voorwaarde. De voorwaarde wordt gevolgd door een dubbele punt :, die het begin van het codeblok van de lus aangeeft.

De lus wordt herhaaldelijk uitgevoerd totdat de voorwaarde False wordt. Gewoonlijk wordt de teller-variabele binnen de lus bijgewerkt om uiteindelijk de voorwaarde False te maken en de lus te stoppen.

Bekijk bijvoorbeeld deze while-lus:

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
copy

In dit voorbeeld fungeert queue_length als onze teller-variabele, beginnend bij 5. Bij elke iteratie van de lus neemt de waarde van queue_length af met 1 totdat deze 0 bereikt. Op dat moment eindigt de lus omdat de voorwaarde 0 > 0 als False wordt geëvalueerd.

Opmerking

Het is essentieel om de teller-variabele binnen de lus bij te werken om uiteindelijk te voldoen aan de voorwaarde om de lus te stoppen. Zonder dit blijft de lus oneindig doorgaan, waardoor verdere code niet wordt uitgevoerd.

Voorbeeldtoepassing

Stel je voor dat je het melkvoorraadbeheer in een supermarkt verzorgt. Je moet ervoor zorgen dat de voorraad niet onder een bepaald niveau zakt, en wanneer dat wel gebeurt, moet je bijvullen om het voorraadniveau te behouden.

Een while-lus is in deze situatie nuttig omdat je hiermee melk in stappen over meerdere iteraties kunt bijvullen totdat de voorraad het gewenste niveau bereikt. Zonder een while-lus zou je het exacte aantal melkpakken in één keer moeten berekenen en bijvullen.

Stel bijvoorbeeld dat een winkelmedewerker per keer slechts een vaste hoeveelheid melk kan bijvullen (bijvoorbeeld 20 pakken per keer). Als de voorraad nog niet volledig is aangevuld, keert de medewerker terug naar het magazijn om een nieuwe lading melk te halen.

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.")
copy

Opmerking

milk_stock += restock_quantity is gelijk aan milk_stock = milk_stock + restock_quantity. Het is simpelweg een beknoptere en beter leesbare manier om dezelfde bewerking uit te drukken.

Het bovenstaande stroomdiagram toont de logica achter de while-lus die wordt gebruikt voor het beheren van de melkvoorraad. Merk op dat de tellervariabele milk_stock, beginnend bij 15, bij elke iteratie van de lus wordt verhoogd met de restock_quantity.

De lus blijft doorgaan totdat milk_stock de min_stock drempel van 50 overschrijdt, waarna deze stopt.

Taak

Swipe to start coding

Beheer de voorraad van een supermarkt met behulp van while-loops om ervoor te zorgen dat Bread, Eggs en Apples voldoen aan hun minimale voorraadniveaus. Aanvulhoeveelheden worden opgeslagen in een dictionary.

  • Gebruik een while-loop om te controleren of "Bread" onder het minimale voorraadniveau zit. Verhoog indien nodig de voorraad met de bijbehorende aanvulhoeveelheid uit de dictionary.
  • Herhaal deze logica voor "Eggs" en "Apples", elk met een eigen while-loop.
  • Loop na het aanvullen door de inventory-dictionary met een for-loop en druk de uiteindelijke voorraadniveaus van alle artikelen af.

Uitvoereisen

  • Voor elk aangevuld artikel, print:
    "<Item> stock is low: <$current_stock> units. Restocking..."
  • Na het aanvullen, print Final Inventory after restocking: gevolgd door de bijgewerkte voorraadniveaus:
    "<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
  • Voeg een nieuwe regel toe vóór de uiteindelijke voorraad met \n.
  • Gebruik f-strings voor de opmaak en enkele aanhalingstekens binnen dubbele aanhalingstekens voor dictionary-sleutels.

Opmerking

Om syntaxconflicten in f-strings te voorkomen, gebruik dubbele aanhalingstekens rond de string en enkele aanhalingstekens binnenin: f"Bread stock is low: {inventory['Bread'][0]} units."
Gebruik \n om een nieuwe regel in de uitvoer te beginnen: "First line.\nSecond line."

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2
Onze excuses dat er iets mis is gegaan. Wat is er gebeurd?

Vraag AI

expand
ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

book
While-Lussen

while-lussen zijn het belangrijkste hulpmiddel voor het afhandelen van onbepaalde iteratie, wat nuttig is in situaties waarin het aantal iteraties niet vooraf bekend is, zoals het monitoren van voorraadniveaus totdat ze een specifieke drempel bereiken.

Bekijk hoe Alex demonstreert hoe je while-lussen gebruikt om dynamische situaties te beheren:

Een while-lus in Python voert herhaaldelijk een codeblok uit zolang een opgegeven voorwaarde True blijft.

Syntax

Om een while-lus te starten, definieer je een teller-variabele en gebruik je het sleutelwoord while gevolgd door een booleaanse voorwaarde. De voorwaarde wordt gevolgd door een dubbele punt :, die het begin van het codeblok van de lus aangeeft.

De lus wordt herhaaldelijk uitgevoerd totdat de voorwaarde False wordt. Gewoonlijk wordt de teller-variabele binnen de lus bijgewerkt om uiteindelijk de voorwaarde False te maken en de lus te stoppen.

Bekijk bijvoorbeeld deze while-lus:

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
copy

In dit voorbeeld fungeert queue_length als onze teller-variabele, beginnend bij 5. Bij elke iteratie van de lus neemt de waarde van queue_length af met 1 totdat deze 0 bereikt. Op dat moment eindigt de lus omdat de voorwaarde 0 > 0 als False wordt geëvalueerd.

Opmerking

Het is essentieel om de teller-variabele binnen de lus bij te werken om uiteindelijk te voldoen aan de voorwaarde om de lus te stoppen. Zonder dit blijft de lus oneindig doorgaan, waardoor verdere code niet wordt uitgevoerd.

Voorbeeldtoepassing

Stel je voor dat je het melkvoorraadbeheer in een supermarkt verzorgt. Je moet ervoor zorgen dat de voorraad niet onder een bepaald niveau zakt, en wanneer dat wel gebeurt, moet je bijvullen om het voorraadniveau te behouden.

Een while-lus is in deze situatie nuttig omdat je hiermee melk in stappen over meerdere iteraties kunt bijvullen totdat de voorraad het gewenste niveau bereikt. Zonder een while-lus zou je het exacte aantal melkpakken in één keer moeten berekenen en bijvullen.

Stel bijvoorbeeld dat een winkelmedewerker per keer slechts een vaste hoeveelheid melk kan bijvullen (bijvoorbeeld 20 pakken per keer). Als de voorraad nog niet volledig is aangevuld, keert de medewerker terug naar het magazijn om een nieuwe lading melk te halen.

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.")
copy

Opmerking

milk_stock += restock_quantity is gelijk aan milk_stock = milk_stock + restock_quantity. Het is simpelweg een beknoptere en beter leesbare manier om dezelfde bewerking uit te drukken.

Het bovenstaande stroomdiagram toont de logica achter de while-lus die wordt gebruikt voor het beheren van de melkvoorraad. Merk op dat de tellervariabele milk_stock, beginnend bij 15, bij elke iteratie van de lus wordt verhoogd met de restock_quantity.

De lus blijft doorgaan totdat milk_stock de min_stock drempel van 50 overschrijdt, waarna deze stopt.

Taak

Swipe to start coding

Beheer de voorraad van een supermarkt met behulp van while-loops om ervoor te zorgen dat Bread, Eggs en Apples voldoen aan hun minimale voorraadniveaus. Aanvulhoeveelheden worden opgeslagen in een dictionary.

  • Gebruik een while-loop om te controleren of "Bread" onder het minimale voorraadniveau zit. Verhoog indien nodig de voorraad met de bijbehorende aanvulhoeveelheid uit de dictionary.
  • Herhaal deze logica voor "Eggs" en "Apples", elk met een eigen while-loop.
  • Loop na het aanvullen door de inventory-dictionary met een for-loop en druk de uiteindelijke voorraadniveaus van alle artikelen af.

Uitvoereisen

  • Voor elk aangevuld artikel, print:
    "<Item> stock is low: <$current_stock> units. Restocking..."
  • Na het aanvullen, print Final Inventory after restocking: gevolgd door de bijgewerkte voorraadniveaus:
    "<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
  • Voeg een nieuwe regel toe vóór de uiteindelijke voorraad met \n.
  • Gebruik f-strings voor de opmaak en enkele aanhalingstekens binnen dubbele aanhalingstekens voor dictionary-sleutels.

Opmerking

Om syntaxconflicten in f-strings te voorkomen, gebruik dubbele aanhalingstekens rond de string en enkele aanhalingstekens binnenin: f"Bread stock is low: {inventory['Bread'][0]} units."
Gebruik \n om een nieuwe regel in de uitvoer te beginnen: "First line.\nSecond line."

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2
Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Onze excuses dat er iets mis is gegaan. Wat is er gebeurd?
some-alt