Python Cursus - Lists met For-loop
Meteen naar de Afsluitende Opgaven over Lists met For-loopTerug naar de cursus pagina
Hoofdstuk 12b - Lists met For-loop
Een "list" (Engelse woord voor "lijst") is een geordende verzameling van elementen. Lists kun je tussendoor aanpassen, dat geldt niet voor alle datastructuren in Python (zoals Strings), en dat maakt lists erg handig.
12.1 Basis van lists
Een list is een verzameling elementen. De elementen van een list staan op volgorde. Omdat ze op volgorde staan, kun je ieder element van een list benaderen via een index. Een index begint vooraan een lijst altijd bij 0:
- index 0: eerste element
- index 1: tweede element
- index 2: derde element
- ...
- index (lengte-1): laatste element
Elementen in een lijst benaderen
Een element in een lijst kun je benaderen met de index. De index zet je tussen vierkante haken [ ], bijvoorbeeld lijst[2]
om het element op index 2 van een lijst te krijgen.
Een deel van een lijst benaderen
Je kunt ook een deel van een lijst benaderen door met indices aan
te geven van welk index tot (dus niet tot-en-met) welk index. In Python lees je [1:3]
als "op
elementen op index 1 tot index 3".
Standaard functies voor lists
Voor lijsten zijn er een aantal standaard functies die je kunt gebruiken:
len()
: aantal elementen van de lijst (de lengte)max()
: het grootste element van de lijstmin()
: het kleinste element van de lijstsum()
: de som van alle elementen in de lijstin
: testen of een element voorkomt in een lijst
Lijsten met for-loop
Met eenfor
loop kun je de elementen van de lijst doorlopen. Hier een voorbeeld waarbij we alle elementen doorlopen een voor elk element uit de lijst fruitlijst het element afdrukken:
Zie het volgende filmpje voor extra uitleg over de for-loop:
Opgave 12.5.0 Groenten en fruit
Klik hier voor de uitwerking.Opgave 12.5.5 Kleurrijke spirograaf
Klik hier voor de uitwerking.12.2 Lists aanpassen
Lists kun je aanpassen, je mag de inhoud van een list wijzigen.
Waarde toekennen op een bepaalde index
Om een element van de list te overschrijven, ken je op die index er een nieuwe waarde aan toe.
Een lijst leeg maken
Je kunt een lijst eenvoudig leegmaken door een lege lijst ( [] ) er aan toe te kennen: Een deel van een lijst leeg maken, je geeft dan aan van welk index tot welk index (dus niet tot-en-met). In dit geval gaat het over elementen op index 1 (dus de tweede element in de lijst) en index 2 (de derde element in de lijst).12.3 Lists en operatoren
Er zijn twee speciale operatoren voor lijsten:
+
: twee lijsten achter elkaar 'plakken'. Het resultaat is een lijst die de elementen bevat van beide lijsten. Je moet het resultaat aan een variabele toekennen om het op te slaan.*
: vermenigvuldigen met een getal om een list te maken die de elementen van de originele list bevat, net zo vaak herhaald als het getal aangeeft. Dit kan een snelle manier zijn om een list te maken waarvan alle elementen hetzelfde zijn.
Om een element achteraan een lijst toe te voegen gebruik je de +=
en zet je het element tussen
vierkante haken.
append()
kun je ook een nieuw element aan het einde van een list plakken. Je roept de methode aan met
het nieuwe element als argument.
Opgave 12.2 Cijferlijst opleuken
Klik hier voor de uitwerking.Opgave 12.3 Operatoren op lijsten
12.4.1 Voeg toe op een bepaald plek in een lijst met insert
Met insert()
kun je aangeven dat je iets op een bepaalde positie in de lijst wilt zetten. Je geeft dan twee dingen mee, de positie (je begint natuurlijk te tellen bij 0, en wat je wilt invoegen. De lijst wordt hierdoor een element groter.
Bijvoorbeeld, 'perzik' op de middelste plek in de lijst fruit_lijst = ["appel", "banaan"]
toe voegen doe je als volgt:
Opgave 12.4.1 Voeg toe op een bepaald plek in een lijst met insert
Klik hier voor de uitwerking.
12.4.2 Verwijder uit een lijst met remove()
remove()
laat je een element van de list verwijderen. Het element dat je wilt verwijderen geef je mee als argument. Als dit element meerdere keren voorkomt in de list, wordt de eerste instantie (die met de laagste index) verwijderd. Als je een element probeert te verwijderen dat niet voorkomt op de list, geeft dat een runtime error.
Opgave 12.4.2 Oefenen met remove
Klik hier voor de uitwerking.
12.4.5 Bepaal positie in een lijst met index()
index()
retourneert de index van de eerste instantie in een list van het element dat als argument aan de methode is meegegeven. Een runtime error volgt als het element niet voorkomt op de list.
Opgave 12.4.5 Oefenen zoeken van positie met index
Klik hier voor de uitwerking.
12.4.6 Aantallen in een lijst tellen met count()
count()
retourneert een integer die aangeeft hoe vaak het element dat als argument is
meegegeven voorkomt in de list. De volgende code drukt 2 af.
Opgave 12.4.6 Aantallen tellen met count()
Klik hier voor de uitwerking.
12.4.7 Een lijst sorteren met sort()
sort()
sorteert de elementen van de lijst, van laag naar hoog. Als de elementen strings zijn, wordt het een alfabetische volgorde gesorteerd.
Opgave 12.4.7 Lijst sorteren met sort()
Klik hier voor de uitwerking.
12.4.8 Lijst in omgekeerde volgorde zetten met reverse()
reverse()
zet de elementen van de list in omgekeerde volgorde.
Opgave 12.4.8 Omgekeerde volgorde zetten met reverse
Klik hier voor de uitwerking.
Lijst doorlopen en iets onthouden
Soms wil je dat door een lijst
lopen en iets onthouden waar je na afloop iets mee doet.
Stel je hebt een lijst: fruitLijst = ["banaan", "appel", "wortel", "druif", "peer"]
en je wilt op het
scherm afdrukken of het inderdaad een lijst met alleen fruit is, of dat er toch een wortel tussen staat. Dat kun je
doen door een Boolean
te gebruiken.
- We doorlopen de lijst.
- Bij de start is nog geen wortel gevonden, dus
wortelGevonden
begint gelijk aanFalse
. - Kom je ergens een wortel tegen, dan maak je
wortelGevonden
gelijk aanTrue
. - Na afloop kun je de waarde van
wortelGevonden
controleren. Is die na afloop nog steeds gelijk aanFalse
, dan weet je dat er geen wortel in de lijst stond.
Opgave 12.5.1 Check onvoldoendes in cijferlijst
Klik hier voor de uitwerking.Opgave 12.5.2 Print negatieve getallen in een lijst
Klik hier voor de uitwerking.Opgave 12.5.3 Vorstdagen tellen
Klik hier voor de uitwerking.12.4.10 Willekeurig element uit een lijst pakken met choice
Met de functie choice()
uit de module random
haal je een willekeurig element uit een lijst. Run de volgende code een paar keer:
Opgave 12.4.10 Kleuren Spirograaf
Klik hier voor alle Python Turtle kleuren. Klik hier voor de uitwerking.Wat je geleerd hebt over Lists
- Lijsten zijn aanpasbaar
- Lijsten doorlopen met een for-loop
- Het laatste element uit elk willekeurig lijst benaderen
- Gebruik van
+
en*
met lists - List functies
max
,min
,sum
, enin
- List methodes
append()
,insert()
,remove()
,index()
,count()
,sort()
, enreverse()
choice()
uit de modulerandom
gebruiken
Verder naar de Afsluitende Opgaven over Lists met For-loop
Terug naar de cursus pagina