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

Veeg om het menu te tonen

book
Voor Lussen

Welkom bij de sectie gewijd aan loops!

In dit hoofdstuk duiken we in hoe loops dienen als een belangrijk hulpmiddel voor het automatiseren van repetitieve taken en essentieel zijn voor het efficiënt omgaan met lijsten en andere iterabele gegevenstypen.

Doe mee met Alex terwijl hij het gebruik van for loops demonstreert om operaties in onze supermarkt te vereenvoudigen:

Het gebruik van for loops in Python stelt je in staat om een codeblok herhaaldelijk uit te voeren voor elk item in een collectie (iterabel object). Dit is wat je moet weten over for loops:

Syntax

Start een for loop met het for sleutelwoord, gevolgd door een variabelenaam zoals item om elk element in de reeks te vertegenwoordigen. Dit wordt gevolgd door het in sleutelwoord en vervolgens het iterabele object zoals groceryItems. Het codeblok binnen de loop wordt eenmaal uitgevoerd voor elk element.

In dit voorbeeld fungeert item als de iteratorvariabele die opeenvolgend toegang krijgt tot elk element in de groceryItems lijst en de print() functie voor elk uitvoert:

1234
groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
copy

Iteratie verwijst naar het proces van het herhaaldelijk uitvoeren van een blok code. Python ondersteunt twee hoofdtypen iteratie:

Definitieve Iteratie

Waarbij het aantal iteraties van tevoren bekend is. for-lussen zijn een klassiek voorbeeld, die automatisch stoppen wanneer ze het einde van de reeks bereiken.

Indefinitieve Iteratie

Waarbij de uitvoering doorgaat totdat een specifieke voorwaarde is voldaan, meestal afgehandeld door while-lussen, die in detail zullen worden behandeld in het komende hoofdstuk.

Voorbeeldtoepassingen

for-lussen in Python kunnen worden gebruikt met elke iterabele object (lists, tuples, dictionaries, strings), waardoor gegevensmanipulatie op een per-element basis mogelijk is.

Of je nu items in een lijst, sleutels of waarden in een woordenboek, of tekens in een string moet benaderen, for-lussen bieden een duidelijke syntaxis die code vereenvoudigt voor repetitieve taken.

Hier is hoe je een for-lus kunt gebruiken om over de elementen in een string en een tuple te itereren, vergelijkbaar met hoe we dat met lijsten zagen:

123456789
# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
copy

Bij het gebruik van een for-lus met een woordenboek, zal direct itereren over het woordenboek standaard door zijn sleutels lopen.

Dit is wat je kunt verwachten wanneer je direct over een woordenboek itereren:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
copy

Merk op hoe de iteratorvariabele product alleen toegang heeft tot de sleutels van de dictionary.

Om over de waarden van een dictionary te itereren, kun je de values() methode gebruiken.

Dit is nuttig voor bewerkingen die toegang tot waarden vereisen zonder dat de sleutels hoeven te worden geraadpleegd:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
copy

Als je tegelijkertijd toegang nodig hebt tot de sleutels en waarden, stelt de items() methode je in staat om door sleutel-waarde paren in een woordenboek te lopen.

Om deze methode in een for-lus te gebruiken, specificeren we twee variabelen voor het in-trefwoord — één voor de sleutel (product) en één voor de waarde (stock):

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
copy

Opmerking

In dit voorbeeld gebruiken we f-strings (ook bekend als geformatteerde string literals) om variabelen direct in strings te embedden. De syntaxis is eenvoudig: voeg een f toe voor het openingsaanhalingsteken ", en plaats variabelen of expressies binnen accolades {} in de string. Deze methode maakt het combineren van strings en variabelen in printstatements veel leesbaarder, dus het is de moeite waard om te leren.

Putten uit je kennis van if/else, booleaanse operatoren en for loops, kunnen we een eenvoudige inventariscontrole uitvoeren op een woordenboek:

123456789101112131415161718
# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
copy

Opmerking

Je zult merken dat we if-verklaringen binnen de for-lus hebben geplaatst, wat extra inspringing aan het if-blok heeft toegevoegd. Zoals eerder vermeld, kan elk ingesprongen codeblok als onafhankelijk worden behandeld, ongeacht waar het is geplaatst. Het belangrijkste is ervoor te zorgen dat de inspringing consistent en correct is tussen hen.

Taak

Swipe to start coding

Beheer voorraad en promoties in een supermarkt door de inventaris door te lopen, restock-voorwaarden te controleren en promoties toe te passen.

  • Loop door elk product in het inventory-woordenboek.
  • Binnen de lus, haal de current_stock en min_stock uit de inventarislijst.
  • Gebruik een if-verklaring om te controleren of de huidige voorraad minder dan of gelijk aan de minimale voorraad is:
    • Zo ja, print een restock-bericht, verhoog de voorraad met 20, werk de inventaris bij en print het updatebericht.
  • Gebruik een andere if-verklaring om te controleren of het product bestaat in het promotions-woordenboek.

Uitvoervereisten

Voor elk item, print:

  • --- Processing: <item> ---

  • Als restocking nodig is:
    <item> moet worden bijgevuld. Huidige voorraad: <current_stock>. Minimaal vereist: <min_stock>

    Bijgewerkte voorraad voor <item>: <updated_stock>

  • Als promotie bestaat:
    Promotie voor <item>: <promotion_details>

  • Zo niet:
    Geen promoties voor <item>

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 1

Vraag AI

expand
ChatGPT

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

book
Voor Lussen

Welkom bij de sectie gewijd aan loops!

In dit hoofdstuk duiken we in hoe loops dienen als een belangrijk hulpmiddel voor het automatiseren van repetitieve taken en essentieel zijn voor het efficiënt omgaan met lijsten en andere iterabele gegevenstypen.

Doe mee met Alex terwijl hij het gebruik van for loops demonstreert om operaties in onze supermarkt te vereenvoudigen:

Het gebruik van for loops in Python stelt je in staat om een codeblok herhaaldelijk uit te voeren voor elk item in een collectie (iterabel object). Dit is wat je moet weten over for loops:

Syntax

Start een for loop met het for sleutelwoord, gevolgd door een variabelenaam zoals item om elk element in de reeks te vertegenwoordigen. Dit wordt gevolgd door het in sleutelwoord en vervolgens het iterabele object zoals groceryItems. Het codeblok binnen de loop wordt eenmaal uitgevoerd voor elk element.

In dit voorbeeld fungeert item als de iteratorvariabele die opeenvolgend toegang krijgt tot elk element in de groceryItems lijst en de print() functie voor elk uitvoert:

1234
groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
copy

Iteratie verwijst naar het proces van het herhaaldelijk uitvoeren van een blok code. Python ondersteunt twee hoofdtypen iteratie:

Definitieve Iteratie

Waarbij het aantal iteraties van tevoren bekend is. for-lussen zijn een klassiek voorbeeld, die automatisch stoppen wanneer ze het einde van de reeks bereiken.

Indefinitieve Iteratie

Waarbij de uitvoering doorgaat totdat een specifieke voorwaarde is voldaan, meestal afgehandeld door while-lussen, die in detail zullen worden behandeld in het komende hoofdstuk.

Voorbeeldtoepassingen

for-lussen in Python kunnen worden gebruikt met elke iterabele object (lists, tuples, dictionaries, strings), waardoor gegevensmanipulatie op een per-element basis mogelijk is.

Of je nu items in een lijst, sleutels of waarden in een woordenboek, of tekens in een string moet benaderen, for-lussen bieden een duidelijke syntaxis die code vereenvoudigt voor repetitieve taken.

Hier is hoe je een for-lus kunt gebruiken om over de elementen in een string en een tuple te itereren, vergelijkbaar met hoe we dat met lijsten zagen:

123456789
# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
copy

Bij het gebruik van een for-lus met een woordenboek, zal direct itereren over het woordenboek standaard door zijn sleutels lopen.

Dit is wat je kunt verwachten wanneer je direct over een woordenboek itereren:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
copy

Merk op hoe de iteratorvariabele product alleen toegang heeft tot de sleutels van de dictionary.

Om over de waarden van een dictionary te itereren, kun je de values() methode gebruiken.

Dit is nuttig voor bewerkingen die toegang tot waarden vereisen zonder dat de sleutels hoeven te worden geraadpleegd:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
copy

Als je tegelijkertijd toegang nodig hebt tot de sleutels en waarden, stelt de items() methode je in staat om door sleutel-waarde paren in een woordenboek te lopen.

Om deze methode in een for-lus te gebruiken, specificeren we twee variabelen voor het in-trefwoord — één voor de sleutel (product) en één voor de waarde (stock):

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
copy

Opmerking

In dit voorbeeld gebruiken we f-strings (ook bekend als geformatteerde string literals) om variabelen direct in strings te embedden. De syntaxis is eenvoudig: voeg een f toe voor het openingsaanhalingsteken ", en plaats variabelen of expressies binnen accolades {} in de string. Deze methode maakt het combineren van strings en variabelen in printstatements veel leesbaarder, dus het is de moeite waard om te leren.

Putten uit je kennis van if/else, booleaanse operatoren en for loops, kunnen we een eenvoudige inventariscontrole uitvoeren op een woordenboek:

123456789101112131415161718
# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
copy

Opmerking

Je zult merken dat we if-verklaringen binnen de for-lus hebben geplaatst, wat extra inspringing aan het if-blok heeft toegevoegd. Zoals eerder vermeld, kan elk ingesprongen codeblok als onafhankelijk worden behandeld, ongeacht waar het is geplaatst. Het belangrijkste is ervoor te zorgen dat de inspringing consistent en correct is tussen hen.

Taak

Swipe to start coding

Beheer voorraad en promoties in een supermarkt door de inventaris door te lopen, restock-voorwaarden te controleren en promoties toe te passen.

  • Loop door elk product in het inventory-woordenboek.
  • Binnen de lus, haal de current_stock en min_stock uit de inventarislijst.
  • Gebruik een if-verklaring om te controleren of de huidige voorraad minder dan of gelijk aan de minimale voorraad is:
    • Zo ja, print een restock-bericht, verhoog de voorraad met 20, werk de inventaris bij en print het updatebericht.
  • Gebruik een andere if-verklaring om te controleren of het product bestaat in het promotions-woordenboek.

Uitvoervereisten

Voor elk item, print:

  • --- Processing: <item> ---

  • Als restocking nodig is:
    <item> moet worden bijgevuld. Huidige voorraad: <current_stock>. Minimaal vereist: <min_stock>

    Bijgewerkte voorraad voor <item>: <updated_stock>

  • Als promotie bestaat:
    Promotie voor <item>: <promotion_details>

  • Zo niet:
    Geen promoties voor <item>

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 1
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