Je hebt zojuist geleerd hoe je een for-lus in een functie kan gebruiken met een gegeven lijst. In deze oefening zal je dat toepassen. Je kan de uitleg hieronder nog eens bekijken als je dat wil.

Uitleg over een for-lus in een functie met een gegeven lijst

Je hebt net geleerd hoe we een lijst die we eerder hebben aangemaakt in een for-lus kunnen gebruiken. Je kan dit hieronder nog eens bekijken.

Herhaling informatie over een for-lus met een opgeslagen lijst
steden = ["Brussel", "Gent", "Antwerpen"]

for stad in steden:
    print(stad)

Wat gebeurt hier?

  • De lijst ["Brussel", "Gent", "Antwerpen"] wordt opgeslagen in de variabele steden.
  • De for-lus begint met de lijst die is opgeslagen in steden.
  • In het begin krijgt stad de waarde "Brussel".
  • De code binnen de lus, , wordt uitgevoerd, waardoor Brussel op het scherm wordt afgedrukt.
  • Daarna krijgt stad de volgende waarde, namelijk "Gent".
  • De code binnen de lus, , wordt uitgevoerd, waardoor Gent op het scherm wordt afgedrukt.
  • Vervolgens krijgt stad de volgende waarde, namelijk "Antwerpen".
  • De code binnen de lus, , wordt uitgevoerd, waardoor Antwerpen op het scherm wordt afgedrukt.
  • Nu zijn er geen namen meer in de lijst die we hadden gegeven, dus stopt de lus.

Op het scherm zie je dus verschijnen:

Brussel
Gent
Antwerpen

Je hebt ook al eerder geleerd hoe je een functie kan maken in Python. Hieronder staat nog eens een voorbeeld.

Voorbeeld simpele functie met twee inputs
def Optellen(a, b):
    resultaat = a + b
    return resultaat

Hierbij kan een gebruiker jouw functie gebruiken door een waarde voor a en b in te geven. Zo zullen ze bij de invoer als antwoord 5 terugkrijgen.

Je hebt ook gezien hoe je een for-lus binnen een functie kan gebruiken. Hieronder staat nog eens een voorbeeld.

Voorbeeld functie met een for-lus en een print-opdracht

Deze functie, genaamd zal steeds één getal als invoer nemen. Vervolgens drukt het op het scherm exact zo vaak de zin Hallo wereld! af. Hier is die functie:

def BegroetVaak(aantal_keer):
    for i in range(aantal_keer):
        print("Hallo wereld!")

Wanneer iemand deze functie gebruikt, kan die zelf kiezen welke waarde voor aantal_keer die als invoer geeft. Als iemand bijvoorbeeld 3 als invoer geeft door te typen, dan krijgt die het volgende op het scherm te zien:

Hallo wereld!
Hallo wereld!
Hallo wereld!

Zo ook krijgt iemand die typt het volgende op het scherm te zien:

Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!
Hallo wereld!



We zullen nu de concepten combineren om een functie te maken waarin we een for-lus gebruiken met een gegeven lijst. Je geeft net zoals bij alle functies die je eerder hebt gezien de invoer (in dit geval een lijst) een naam, en binnen de functie kan je die naam gebruiken om naar de lijst te verwijzen. Vervolgens kan je een for-lus gebruiken om door elk element van die lijst te gaan en er iets mee te doen (zoals het afdrukken op het scherm).

Als je bijvoorbeeld een functie maakt die alle elementen van een lijst afdrukt, kan dat er zo uitzien:

def PrintAllesInDeLijst(de_lijst):
    for element in de_lijst:
        print(element)

Hierbij is de_lijst de naam die we hebben gegeven aan de invoerlijst van de functie. In de for-lus gebruiken we deze naam om door elk element van de lijst te gaan en het af te drukken met .

Als iemand deze functie aanroept met een lijst, zoals , dan zal het volgende op het scherm verschijnen:

appels
broccoli
citroenen
druiven



Opdracht

Maak een functie genaamd die een lijst als invoer neemt. Deze lijst bevat namen van mensen. De functie moet iedereen in de gegeven lijst op een aparte regel verwelkomen met het volgende bericht: Welkom [naam]!, waarbij [naam] wordt vervangen door de daadwerkelijke naam uit de lijst. Zie onderstaande input-output verwachtingen voor voorbeelden.

input-output verwachtingen
Invoer Verwachte output
Welkom Ahmed!
Welkom Bryan!
Welkom Capucine!
Welkom Dani!
Welkom Elodie!
Welkom Fiona!
Welkom Gabin!
Welkom Hiba!
Welkom Inès!
Welkom Jialue!
Welkom Karim!
Welkom Lara!
Welkom Max!
Welkom Noemie!
Welkom Oscar!
Welkom Paulin!
Welkom Quirine!
Welkom Rocco!
Welkom Saniya!
Welkom Thibault!
Welkom Uma!
Welkom Victoria!
Welkom Wided!
Welkom Xenophanes!
Welkom Yanis!
Welkom Zayon!