#Klooienmetcomputers
Arnout van Kempen over rommelen in een digitale wereld.
Dit artikel is verschenen in Accountant nr. 6, 2021
Bekijk alle artikelen uit dit nummer
» Download dit artikel (pdf)
» Download het hele nummer (pdf)
Na een nostalgisch uitstapje in het vorige nummer, ingegeven door de aankoop van een oude pocketcomputer, zijn we weer terug bij waar we waren: programmeren met Python.
We hebben wat basiselementen van Python te pakken inmiddels. Wat we nog missen is het herhalen van stukken code. In talen als C of BASIC heb je daar statements voor die met een teller werken, Python doet dat net een tikje slimmer: je kan een blok code uitvoeren met een variabele die gevoed wordt vanuit een reeks waardes. Het is daarbij niet nodig dat het om een variabele op een telbare schaal gaat, zoals dat in BASIC en in iets mindere mate in C wel het geval is. Je kan in feite iedere set waardes aanbieden.
Hoe ziet dat er in de praktijk uit? In de simpelste vorm:
for woord in [‘dit’, ‘zijn’, ‘woorden’] :
print(woord)
Geeft als uitvoer:
dit
zijn
woorden
(Let op de vier spaties voor het commando print!)
Je kan het wat complexer maken met de commando’s break en else. Dan krijg je bijvoorbeeld zoiets:
Getallen = [1,3,5,7,9,11]
for getal in getallen:
if getal%2 == 0:
print (‘de lijst bevat een even getal’)
break
else:
print (‘geen even getal in de lijst’)
Let ook weer op de spaties. En zie dat de else hier op het niveau van de for staat, en niet van de if. De logica van het programma is dat de hele reeks doorlopen wordt totdat een even getal wordt gevonden. Als dat gebeurt wordt dat gemeld en wordt de loop verlaten via de break. Alleen als de for geen resultaat oplevert, en dus niet via de break wordt verlaten, treedt de else in werking.
Naast het for commando kent Python ook het while commando om loops mee te bouwen. Waar de for doorgaat tot een lijst is doorlopen, wordt de while herhaald zolang de waarde achter de while waar is. Dus zoiets als
while true:
print (‘dit gaat nooit voorbij’)
Zal een eeuwige herhaling opleveren.
Gerelateerd
We gaan diep!
Arnout van Kempen over rommelen in een digitale wereld.
Herhalingen
Arnout van Kempen over rommelen in een digitale wereld.
Voorwaarden in COBOL
Arnout van Kempen over rommelen in een digitale wereld.
Het Y2K-probleem
Arnout van Kempen over rommelen in een digitale wereld.
Over bits & bytes
Arnout van Kempen over rommelen in een digitale wereld.