ID.nl logo
Zo kun je programmeren in Python - Deel 6
© Reshift Digital
Huis

Zo kun je programmeren in Python - Deel 6

In de href="https://computertotaal.nl/artikelen/pc/zo-kun-je-programmeren-in-python-deel-5/" rel="noopener noreferrer" target="_blank">vorige les</a> leerde je met bestanden werken en zag je hoe je je programma kunt laten reageren op exceptions. Zo beginnen je programma’s ondertussen al vrij complex te worden. Tijd dus om wat structuur in je programma’s te brengen, en dat doen we in deze les met functies en modules. We bekijken ook enkele standaardmodules van Python.

Wil je meer leren over programmeren? Bekijk dan onze Cursus: programmeren in Phyton (boek & online cursus).

Tot nu toe waren onze Python-programma’s vrij kort, maar je hebt ondertussen al genoeg Python-bagage om zelf al eens aan de slag te gaan en je eigen ideeën uit te werken in programma’s. En dan merk je al snel dat je programma lang en ondoorzichtig wordt. Gelukkig kent Python verschillende manieren om wat meer structuur in je programma’s te brengen.

De eerste manier ben je al tegengekomen: functies. We hebben immers in de vorige lessen al diverse standaardfuncties van Python gebruikt, zoals len, print, input, format, split, open, read en write. Een functie is een afzonderlijk stukje code dat een afgebakende taak uitvoert die je meerdere keren zou willen uitvoeren op verschillende gegevens. Zodra je in je programma dus merkt dat je een stukje code telkens aan het herhalen bent, zou je eerste gedachte moeten zijn: ik maak er een functie van!

Een functie definiëren

We tonen je als voorbeeld hoe je een functie maakt om te berekenen of een woord een palindroom is. Een palindroom of spiegelwoord is een woord dat van achteren naar voren gelezen hetzelfde is als van voor naar achter. Een eenvoudige functie om te bepalen of een woord een palindroom is, ziet er als volgt uit:

def is_palindroom(woord):letters = list(woord)palindroom = Truewhile len(letters) > 0 and palindroom:if letters[0] != letters[-1]:palindroom = Falseelse:letters.pop(0)if len(letters) > 0:letters.pop()return palindroom

Dit is niet de efficiëntste manier om te bepalen of een woord een palindroom is, maar wel een die goed te begrijpen is. Je ziet dat er in de definitie van deze functie eigenlijk maar twee zaken nieuw zijn: de eerste en de laatste regel. In de eerste regel geven we met def is_palindroom(woord): aan dat we een functie definiëren met de naam is_palindroom en dat die één parameter meekrijgt, die we woord noemen. Dan komt onze hele berekening, die je met al je kennis uit de vorige lessen na een kleine studie zou moeten begrijpen, en op het einde geven we met return palindroom aan dat we de waarde die na onze berekening in de variabele palindroom zit teruggeven.

Een functie aanroepen

Breek je hoofd nog even niet over de inhoud van de functie. Typ de code in Thonny in en sla het bestand op onder de naam palindroom.py. Voer het dan uit met een druk op F5. Er gebeurt niets, maar de functie is nu gedefinieerd. In de terminal onderaan Thonny kun je nu de functie aanroepen. Enkele voorbeelden:

>>> is_palindroom('nepalapen')True>>> is_palindroom('napalm')False>>> is_palindroom('koortsmeetsysteemstrook')True

Denk nu eens even na over wat er gebeurt als je is_palindroom('nepalapen') aanroept. De functie is_palindroom wordt dan uitgevoerd en aan de variabele woord van de functie wordt de string 'nepalapen' toegekend. Dan gebeurt die hele berekening, en geeft de functie als resultaat True of False. En voor elke andere string die je aan de functie doorgeeft, gebeurt de berekening op dezelfde manier. Op deze manier heb je de berekening ingekapseld in een afzonderlijk stukje code, de functie, die herbruikbaar is.

Overigens zijn door die inkapseling de parameter woord net zoals de variabelen letters en palindroom alleen binnen het blok van de functie gedefinieerd: het zijn wat we noemen lokale variabelen.

Recursieve functies

In onze functie is_palindroom gaan we met een while-lus alle letters in het woord af. Een andere manier om de functie te definiëren is met recursie: in de functie roepen we de functie opnieuw aan, maar op een deel van het woord. Dat ziet er als volgt uit:

def is_palindroom2(woord):if len(woord) < 2:return Trueif woord[0] != woord[-1]:return Falsereturn is_palindroom2(woord[1:-1])

Voeg deze functie in Thonny gewoon aan hetzelfde bestand toe als is_palindroom, sla het bestand op en druk op F5 om het uit te voeren. Je kunt nu deze functie is_palindroom2 uitproberen op enkele woorden. Het resultaat moet telkens hetzelfde zijn als is_palindroom op hetzelfde woord.

De functie is_palindroom2 is een mooi voorbeeld van een recursieve functie. We bekijken eerst of het woord minder dan twee letters bevat. In dat geval (het woord is leeg of heeft één letter) is het altijd een palindroom en daarom geven we in dat geval True terug. Daarna controleren we of de eerste letter verschilt van de laatste letter van het woord. Verschillen die, dan is het woord al zeker geen palindroom en geven we dus False terug.

Dan blijft er nog één geval over: de eerste en laatste letter van het woord zijn gelijk, maar van de andere letters weten we nog niets. Wat doen we dan? We roepen de functie is_palindroom2 opnieuw op, maar op die andere letters. Die verkrijgen we door de slice (zie les 2) [1:-1] op het woord toe te passen, die het woord zonder de eerste en laatste letter teruggeeft.

Belangrijk bij recursieve functies

Als je een recursieve functie schrijft, is het belangrijk dat je de functie telkens oproept op een kleinere invoer dan waarmee je begon, zodat je uiteindelijk bij een basistest uitkomt, zoals in ons geval if len(woord) < 2: en if woord[0] != woord[-1]:. In beide gevallen roepen we de functie is_palindroom2 niet meer aan, maar geven we een waarde True of False terug. Doordat we in het derde geval altijd de eerste en de laatste letter van het woord verwijderen voor we de functie opnieuw oproepen, verzekeren we dat de functie uiteindelijk altijd bij een van de basistests uitkomt.

Met modules werken

Zonder dat je het weet, heb je nu al je eerste module geschreven. Elk Python-bestand waarin je code schrijft, is immers een module voor Python. Maak nu een nieuw Python-bestand aan in Thonny en noem het bijvoorbeeld test_palindroom.py. Als je in dit bestand de code uit palindroom.py wilt gebruiken, moet je de module palindroom importeren. Dat gaat als volgt:

import palindroom

print(palindroom.is_palindroom("nepalapen"))

Met import palindroom zeggen we aan de Python-interpreter dat we toegang willen tot alle code in de module palindroom. Python zoekt dan naar bestanden met de naam palindroom.py in zijn zoekpad. Omdat de code test_palindroom.py in dezelfde directory staat als palindroom.py, vindt Python de module en zijn de functies is_palindroom en is_palindroom2 daarin beschikbaar onder de namen palindroom.is_palindroom en palindroom.is_palindroom2.

In dit geval is het niet zo handig dat je voor elke functie uit de module palindroom de aanduiding palindroom. dient te zetten, omdat dit nogal lang is. We kunnen de naam van een module die we gebruiken gelukkig ook afkorten:

import palindroom as pal

print(pal.is_palindroom("nepalapen"))

Het is ook mogelijk om het voorvoegsel voor de module volledig weg te laten door de specifieke functies die we willen gebruiken te importeren:

from palindroom import is_palindroom

print(is_palindroom("nepalapen"))

Dat kan ook met meerdere functies:

from palindroom import is_palindroom, is_palindroom2

print(is_palindroom("nepalapen"))

print(is_palindroom2("parterretrap"))

Zodra je Python-code wat langer wordt, is het aan te raden om ze in modules op te splitsen. Een goede vuistregel is dat elke module code voor één specifiek doel moet bevatten. In ons geval bevat de module bijvoorbeeld alle mogelijke code die met palindromen te maken heeft. Als we daarnaast ook code voor anagrammen zouden willen toevoegen, doe je dat het best in een afzonderlijke module, anagram.py.

Systeeminformatie

Python zelf bestaat ook uit een heleboel standaardmodules waarin allerlei handige functies zitten. Zo is er de module platform om informatie over het platform waarop je Python-programma draait op te vragen:

>>> import platform>>> platform.architecture()('64bit', 'ELF')>>> platform.platform()'Linux-4.15.0-33-generic-x86_64-with-Ubuntu-18.04-bionic'>>> platform.processor()'x86_64'>>> platform.python_version()'3.6.7'>>> platform.system()'Linux'

Verder bevat de standaardmodule os allerlei functies die met het besturingssysteem te maken hebben. Zo kun je een lijst opvragen van de bestanden in de huidige directory:

>>> import os>>> os.listdir()['palindroom.py', 'test_palindroom.py']

Werken met getallen

Als je met getallen wilt werken, komt de module math goed van pas. Die bevat allerlei functies voor berekeningen, zoals je in het volgende voorbeeld ziet:

>>> import math>>> math.floor(4.3)4>>> math.ceil(4.3)5>>> math.gcd(28, 12)4>>> math.sqrt(2)1.4142135623730951>>> math.e2.718281828459045>>> math.pi3.141592653589793>>> math.sin(2*math.pi)-2.4492935982947064e-16

In de laatste regel zie je al een nadeel van berekeningen met floats: door afrondingsfouten geeft de berekening van de sinus van 2 keer pi een heel klein getal (-2 en nog iets maal 10 tot de -16de macht) in plaats van het juiste resultaat 0.

Een andere nuttige module is random, waarmee je willekeurige getallen kunt genereren:

>>> import random>>> random.randint(1, 10)7>>> random.choice(['lies', 'jan', 'kees', 'mireille', 'koen', 'rob'])'rob'>>> namen = ['lies', 'jan', 'kees', 'mireille', 'koen', 'rob']>>> random.shuffle(namen)>>> namen['jan', 'rob', 'koen', 'mireille', 'lies', 'kees']

Zo geeft de functie randint(a, b) een willekeurig geheel getal tussen a en b terug (a en b inbegrepen). Met choice kies je een willekeurig element uit een lijst. En met shuffle schud je een lijst willekeurig door elkaar.

Samenvatting

In deze les heb je geleerd om je Python-code wat meer te structureren. Enerzijds heb je berekeningen die je vaak herhaalt in functies leren opnemen. Anderzijds heb je geleerd hoe je functies die bij elkaar horen kunt afscheiden in een afzonderlijke module. We hebben tot slot ook met enkele standaardmodules van Python kennisgemaakt. In de volgende les gaan we op de structuur van datatypes in: we tonen je hoe je zelf eigen datatypes kunt definiëren in de vorm van klassen.

Opdracht

Open de module palindroom.py in Thonny en voer ze uit met een druk op F5. Voer in de terminal onderaan de volgende opdrachten in: *>>> is_palindroom('parterretrap')True>>> woord**Traceback (most recent call last):**File "

Uitwerking

De parameter woord in de functie is een lokale variabele: die is alleen binnen het blok van de functie gedefinieerd. Als je de functie met het argument 'parterretrap' oproept, wordt die string in de functie aan de lokale variabele woord toegekend, maar na het uitvoeren van de functie is die variabele niet meer beschikbaar en geeft Python dus met een NameError aan dat het de naam woord niet kent.

Cheatsheet

Functie: een afzonderlijk stukje code dat je meerdere keren uitvoert. Importeren: aangeven dat je een module wilt gebruiken. Lokale variabele: een variabele die alleen binnen een specifiek blok (bijvoorbeeld van een functie) gedefinieerd is. Module: een afzonderlijk bestand met Python-code. Recursieve functie: een functie die zichzelf aanroept.

▼ Volgende artikel
Netflixen in bad en het weerbericht op je spiegel: 18x de leukste tech voor de badkamer
© ID.nl
Huis

Netflixen in bad en het weerbericht op je spiegel: 18x de leukste tech voor de badkamer

Dankzij slimme technologie voeg je comfort en luxe aan jouw badkamer toe. Denk aan vochtbestendige wifi- en bluetooth-speakers voor ontspannende muziek en speciale televisies voor je favoriete programma's. En met behulp van waterdichte e-readers hoef je je tijdens urenlange badderen geen moment te vervelen. Zelfs weegschalen, spiegels en douchekoppen zijn tegenwoordig slimmer dan ooit.

Vochtbestendige speaker: Sonos Roam 2

Natte handen? Geen probleem, want de Sonos Roam 2 bedien je met jouw stem. Verder is deze draadloze luidspreker IP67-gecertificeerd, waardoor er geen vocht kan binnendringen. Volgens de fabrikant houdt de oplaadbare accu het ongeveer tien uur vol, zodat je niet afhankelijk bent van netstroom. Handig is dat de Roam 2 met andere Sonos-speakers kan samenwerken. Verbind het apparaat met wifi en bepaal in een app welke afspeellijst, podcast of radiozender je wilt horen. Is er in jouw badkamer geen wifi-dekking? Koppel in dat geval een smartphone via bluetooth en stream alsnog muziek. De Roam 2 is in verschillende kleurstellingen te koop, namelijk zwart, wit, rood, blauw en groen.

Slimme douchekop: Hydrao Aloe

Met deze slimme douchekop bespaar je eenvoudig op het waterverbruik. Tussen de sproeistralen bevinden zich vijf ledlampen. Die geven het actuele waterverbruik weer. Aan het begin van de douchebeurt is de verlichting groen, maar na iedere tien liter toont de Hydrao Aloe een andere kleur. Bij rode knipperende lampjes heb je meer dan veertig liter water verbruikt. Je past het lichtschema in een app op je smartphone desgewenst aan. Deze douchekop is in drie uitvoeringen te koop.

Waterdichte e-reader: Kobo Libra Colour

Op de Kobo Libra Colour zie je alle boekomslagen, illustraties, afbeeldingen en notities in kleur. Ondanks het ruime schermformaat van 7 inch valt het gewicht mee. Dat bedraagt nog geen 200 gram. Lees dus gerust uren achtereen in bad. Met een interne opslagcapaciteit van 32 GB kun je flink wat e-books en luisterboeken opslaan. Je gebruikt de Libra Colour optioneel ook voor het maken van aantekeningen, al heb je daarvoor de los verkrijgbare Kobo Stylus 2 nodig. Deze e-reader is in een zwarte en witte behuizing te koop.

Badkamer-tv: SplashVision ESI-22

Vanuit bad heb je alle tijd om je favoriete tv-programma's te bewonderen. Dat kan natuurlijk met een geschikte smartphone of tablet, maar het is comfortabeler om een vochtbestendige televisie te plaatsen. SplashVision fabriceert beeldbuizen voor badkamers, zoals de ESI-22. Je monteert dit model in of op de wand. Een beelddiagonaal van 22 inch lijkt misschien klein, maar wegens de korte kijkafstand voldoet het meestal prima. Tegen een stevige meerprijs koop je deze televisie eventueel in een groter formaat van 27 of 32 inch. Installeer vanuit het besturingssysteem Google TV diverse bekende video-apps en kijk naar scherpe Full-HD-beelden. De ESI-22 is in drie smaken te koop, namelijk zwart, wit en grijs. Een waterdichte afstandsbediening is inbegrepen.

Infrarood spiegel met wifi: Eurom Sani Mirror LED wifi 600

Is het vaak koud in jouw badkamer? De Eurom Sani Mirror LED wifi 600 is een badkamerspiegel en infraroodpaneel in één. Dit is aangename stralingswarmte die aanvoelt met zonnestralen op je huid. Mooi meegenomen is dat de spiegel vanwege de verwarmingsfunctie niet meer beslaat. Er is aan de achterzijde ook nog ledverlichting ingebouwd. Gebruik de bedieningsknoppen aan de onderzijde om de temperatuur en verlichting te reguleren. Wanneer je het apparaat met wifi verbindt, stel je in de Eurom Smart-app eventueel een weekschema in. Kies tussen een spiegel met een witte of zwarte rand.

Vochtbestendige speaker: JBL Flip 7

De JBL Flip 7 vult jouw badkamer moeiteloos met heldere klanken. Een pluspunt is dat je de behuizing zowel rechtop als liggend kunt neerzetten. In combinatie met een batterijduur tot maximaal zestien uur vind je vast wel een geschikte plek. Valt de behuizing onverhoopt op de harde badkamervloer, dan is er nog geen man overboord. Zelfs na een val van één meter hoogte blijft de Flip 7 gewoon doorspelen. Bovendien voldoet deze robuuste bluetooth-speaker aan de IP68-norm. Het product is in allerlei vrolijke kleuren verkrijgbaar.

Slimme wc: Creavit WQ Smart Toilet

De Creavit WQ Smart Toilet oogt weliswaar als een doodnormale wc, maar niets is minder waar. Dit exemplaar heeft namelijk een zogeheten verwarmde onderdouche met föhnfunctie. Extra hygiënisch dus! Bovendien heeft het toilet een verwarmde zitting. Je kiest hierbij tussen zes temperatuurstanden. Gebruik de bijgesloten afstandsbediening om deze luxe wc te bedienen, zoals de temperatuur en de verlichting.

Waterdichte e-reader: Amazon Kindle (2024)

Deze Amazon Kindle is een betaalbaar leesmaatje voor in bad. Ondanks de relatief lage aanschafprijs voldoet de lichte behuizing aan de IPx8-norm. Hij is dus volledig waterdicht! Je kunt dit leesapparaat met één hand bedienen, want het 6inch-scherm is lekker compact. Sla aan de hand van 16 GB interne opslag al je favoriete e-books op. Je schaft deze uitvoering van de Kindle in een zwart of groen jasje aan.

Badkamer-tv: Sylvox 32" Smart Mirror YV

Met de Sylvox Smart Mirror haal je een badkamerspiegel en televisie ineen in huis. Het schermdiagonaal bedraagt 32 inch. Gunstig is dat Google TV is ingebakken. Voeg vanuit de Play Store bijvoorbeeld Netflix, Disney+ of YouTube toe en kijk naar video's in Full-HD-kwaliteit. Via HDMI en usb kun je ook nog externe bronnen aansluiten. Je gebruikt voor de bediening de aanraaktoetsen of waterdichte afstandsbediening. Let goed op welk type je aanschaft, want er is een opbouw- én inbouwmodel beschikbaar. Je betaalt voor laatstgenoemde optie honderd euro extra.

Lees ook: De geheime codes van Netflix: zo ontdek je verborgen genres en films

Vochtbestendige speaker: Sonoro Stream

De Sonoro Stream is speciaal ontwikkeld voor vochtige ruimtes. De afstandsbediening is namelijk waterdicht, waardoor je dit handzame audiosysteem probleemloos met natte handen bedient. Je kunt op verschillende manieren luisteren. Allereerst is er een bluetooth-adapter ingebouwd. Koppel dus een smartphone en open je favoriete muziek-app. De Stream kan ook rechtstreeks afspeellijsten en podcasts bij Spotify ophalen. Verbind het apparaat hiervoor met wifi. Dat geeft je meteen ook toegang tot tienduizenden internetradiostations van over de hele wereld. Mooi meegenomen is de aanwezigheid van een DAB+-tuner, zodat je bekende radiostations in een hoge audiokwaliteit kunt ontvangen. Het Duitse merk ontwikkelt dit product in drie kleurstellingen.

Spiegel met speakers: Mawialux Catina

Daar zit muziek in! Deze uitvoering van de Mawialux Catina bevat namelijk twee speakers. Verbind jouw smartphone met bluetooth en laat een afspeellijst op deze spiegel los. Verder heeft de Catina ook een datum- en tijdsaanduiding. Bepaal daarnaast de kleurtemperatuur van de dimbare achtergrondverlichting. Nuttig is de geïntegreerde spiegelverwarming. Je hebt hierdoor geen last van condensvorming. Let goed op welke versie je koopt, want de Catina is ook zonder interne speakers te koop. Het goedkoopste model meet 80 × 50 centimeter.

Waterdichte e-reader: PocketBook InkPad 4

Zoek je een ruime, waterbestendige e-reader, dan is de PocketBook InkPad 4 een interessante kandidaat. Vanwege het riante schermdiagonaal van 7,8 inch stel je bijvoorbeeld gemakkelijk grotere letters in. Dankzij een respectabele resolutie van 1872 × 1404 pixels ogen tekst en beeld erg scherp. Liever luisteren? De behuizing bevat een speaker, zodat je een audioboek, liedje of podcast kunt opzetten. Deze e-reader heeft 32 GB interne opslag.

Slimme weegschaal: Robi S11

Een uitgebreide slimme weegschaal hoeft helemaal niet zoveel geld te kosten. Neem bijvoorbeeld de Robi S11. Naast je gewicht meet je hiermee onder meer het vetpercentage, de spiermassa en het buikvet. Hiervoor gebruikt deze weegschaal acht sensors. Bekijk de resultaten op het uitgebreide display. Via bluetooth communiceert de S11 met diverse geschikte apps op je smartphone, zoals Fitbit, Samsung Health, Google Fit en Apple Gezondheid.

Vochtbestendige speaker: AquaSound EMN30-RW N-Joy

Als je onder de douche of in bad altijd naar muziek luistert, is een gespecialiseerd audio-inbouwsysteem het overwegen waard. AquaSound ontwikkelt geschikte producten, waaronder de hier besproken EMN30-RW N-Joy. Deze set bestaat uit een controller, bluetooth-versterker (30 watt) en twee inbouwspeakers. Tegen een meerprijs is er ook een versterker met een hoger uitgangsvermogen van vijftig of zeventig watt verkrijgbaar. Met behulp van de inbegrepen magnetische wandhouder kies je voor het 5inch-bedieningsdisplay een centrale plek in de badkamer. Kies hierop bijvoorbeeld Spotify, Deezer of Tidal en tik vervolgens op je favoriete afspeellijst. De speakers zijn in verschillende kleuren beschikbaar.

Wifi-badkamerspiegel: Bella Mirror Smart spiegel 60cm

Een slimme spiegel hoeft helemaal niet zo duur te zijn. Dit exemplaar van Bella Mirror heeft een bescheiden diameter van zestig centimeter, waardoor hij makkelijk in een bescheiden badkamer past. Verbind de spiegel via de Quality Heating-app met het draadloze thuisnetwerk om de tijd, de datum en het weerbericht te tonen. Een pluspunt is de anticondensoptie. Zodra je deze functie activeert, kan de spiegel niet beslaan. Er is ook nog heldere ledverlichting ingebouwd. Dit product is met een zwart of goudkleurig frame verkrijgbaar. Ten slotte kun je ook nog voor een frameloos ontwerp kiezen.

Handdoekverwarmer met wifi: Eurom Sani Bathroom Radiator 1000 wifi

De breed verkrijgbare Eurom Sani elektrische badkamerradiator ondersteunt een riant uitgangsvermogen van 1000 watt. Kies tussen twee standen. Zo kun je kortstondig de handdoeken tot maximaal zeventig graden opwarmen. Als alternatief verwarm je de hele badkamer tot een temperatuur van 37 graden. Verbind de radiator met wifi om de temperatuur op afstand te reguleren. Je kunt hierbij ook een tijdschema instellen. Op die manier stap je 's ochtends altijd in een voorverwarmde badkamer!

Vochtbestendige speaker: Sony XB100

Haal met de Sony XB100 een betaalbare IP67-gecertificeerde bluetooth-speaker van een bekend merk in huis. Je schaft een zwarte, grijze, blauwe óf oranje uitvoering aan. De behuizing van 7,6 × 7,6 × 9,5 centimeter is zéér compact. Verwacht dan ook geen groots geluid, maar voor deuntjes in de badkamer is dat ook helemaal niet nodig. Je luistert tenslotte veelal op korte afstand naar muziek of radio. Een volgeladen accu is goed voor een luistertijd van zo'n zestien uur. Het Japanse elektronicaconcern levert een riempje mee. Gebruik dat om de XB100 ergens aan op te hangen.

Waterdichte e-reader: Kobo Clara BW

De Kobo Clara BW is de goedkoopste e-reader van Kobo. Wie het apparaatje per ongeluk in bad laat vallen, leest daarna gewoon weer verder. De IPx8-gecertificeerde behuizing is namelijk bestand tegen zestig minuten onderdompelen. Het zwart-witte e-inkscherm van 6 inch voldoet voor leesfanaten prima. Vanwege een resolutie van 1448 × 1072 pixels ogen de letters scherp. Er is 16 GB interne opslag ingebouwd, waardoor je duizenden e-books kunt opslaan. Overige pluspunten zijn de voorgrondverlichting en het lichte gewicht van 174 gram.

▼ Volgende artikel
Wat doet 120 Hz voor je televisie of monitor, en heb je het wel echt nodig?
© ER | ID.nl
Huis

Wat doet 120 Hz voor je televisie of monitor, en heb je het wel echt nodig?

Als je de specificatielijst van een moderne televisie of monitor bekijkt, zie je achter het kopje 'verversingssnelheid' vaak een getal staan gevolgd door 'Hz'. Jarenlang was 50 of 60 Hz de standaard, maar tegenwoordig pronken fabrikanten met 100, 120 of zelfs 144 Hz. Klinkt sneller, en sneller is meestal beter, maar wat betekent het nou eigenlijk voor jouw kijkervaring? Is het een noodzaak voor iedereen, of vooral leuk voor fanatieke gamers?

Om te begrijpen wat die Hertz (Hz) doet, moet je een televisie of monitor niet zien als een statisch schilderij, maar als een soort digitale flipbook. Het beeld dat je ziet, wordt immers continu opnieuw opgebouwd. Een standaard 60Hz-scherm ververst het beeld 60 keer per seconde. Dat is voor het menselijk oog snel genoeg om een vloeiende beweging waar te nemen bij normaal tv-kijken, zoals het nieuws of een dramaserie. Een 120Hz-scherm doet dat dus dubbel zo vaak: 120 keer per seconde.

©DC Studio

Waarom zou je meer beelden per seconde willen?

Het grootste voordeel van een hogere verversingssnelheid is soepelheid. Hoe meer beelden er per seconde worden getoond, hoe vloeiender bewegingen eruitzien. Bij 60 Hz kunnen snelle acties soms wat schokkerig ogen of last hebben van bewegingsonscherpte, ook wel 'motion blur' genoemd. Bij 120 Hz blijven details scherp, zelfs als de camera snel draait of als er bijvoorbeeld een raceauto voorbij raast. Daarnaast voelt de besturing van games directer aan. Tussen het moment dat je een knop indrukt en het moment dat je actie op het scherm ziet, zit minder tijd. Dat verschil in milliseconden lijkt verwaarloosbaar, maar je brein pikt het direct op als een responsievere ervaring.

Het verschil tussen 120 en 144 Hz (en hoger)

Terwijl 120 Hz de nieuwe gouden standaard is voor televisies, zie je bij computermonitors vaak getallen als 144 Hz, 165 Hz of zelfs 240 Hz en hoger. Het principe blijft hetzelfde, maar de toepassing verschilt. 120 Hz is de limiet voor de huidige generatie spelcomputers, zoals de PlayStation 5 en Xbox Series X. Televisies richten zich daarom specifiek op dat getal. Pc-gamers hebben echter vaak krachtiger videokaarten die nóg meer beelden per seconde kunnen produceren. Daarom zie je monitors met 144 Hz of meer.

Is het verschil tussen 120 en 144 Hz zichtbaar? Voor de gemiddelde gebruiker nauwelijks. Waar de stap van 60 naar 120 Hz een wereld van verschil is die bijna iedereen direct ziet, is de stap naar 144 Hz of hoger vooral voer voor professionele e-sporters die elke mogelijke fractie van een seconde winst nodig hebben. Voor de consument die een monitor zoekt voor thuisgebruik en gaming, is alles boven de 120 Hz doorgaans een uitstekende keuze.

©ER | ID.nl

Heb jij het nodig?

Het antwoord op die vraag hangt volledig af van wat je met je scherm doet; of dat nu een tv of een gamemonitor is. Kijk je voornamelijk lineaire televisie, films en series via streamingdiensten? Dan is een 120Hz-scherm geen harde noodzaak, aangezien films doorgaans in 24 beelden per seconde worden geschoten. Toch hebben 100/120Hz-panelen in televisies vaak wel een betere beeldkwaliteit en kunnen ze die films rustiger weergeven dan goedkopere 60Hz-panelen.

Ben je echter een gamer? Dan is het antwoord volmondig ja. De nieuwste spelcomputers en moderne videokaarten zijn gemaakt om die hoge snelheden te benutten. Games spelen soepeler, zien er scherper uit tijdens actiescènes en je reageert sneller op wat er gebeurt. Als je nu een nieuwe tv of monitor koopt met het oog op de toekomst en gaming, is 120 Hz of hoger eigenlijk een vereiste op je wensenlijstje. Let er bij televisies wel op dat je beschikt over een HDMI 2.1-aansluiting, want alleen die kabel kan de enorme hoeveelheid data van 4K-beeld met 120 Hz verwerken.

Drie tv's met 120 Hz of meer

De meeste high-end tv's van dit moment ondersteunen 120 Hz voor spelcomputers (PS5/Xbox Series X) en gaan zelfs tot 144 Hz als je ze aan een krachtige gaming-pc hangt.

Als we kijken naar de huidige generatie televisies, kunnen we niet om de LG OLED evo C5 heen. Dit is de gloednieuwe opvolger van de populaire C4 en wordt gezien als de standaard voor gamers en filmliefhebbers. Hij beschikt over vier HDMI 2.1-poorten die de volle 144 Hz ondersteunen, wat hem toekomstbestendig maakt voor pc-gamers, terwijl hij naadloos samenwerkt met de PlayStation 5 en Xbox Series X op 120 Hz. Het nieuwe paneel heeft een nog hogere helderheid dan zijn voorganger, waardoor HDR-beelden nog meer impact hebben.

Daarnaast is de Samsung OLED S95F een absolute blikvanger in de winkels. Waar Samsung vorig jaar hoge ogen gooide met de S95D, doet de F-serie er nog een schepje bovenop met een vernieuwde antireflectielaag die nog beter werkt in lichte kamers. Dit model combineert de diepe zwartwaarden van OLED met de intense kleuren van Quantum Dots. Ook dit scherm ondersteunt verversingssnelheden tot 144 Hz en beschikt over de uitgebreide Gaming Hub van Samsung, waarmee je zelfs zonder console games kunt streamen.

Voor wie liever geen OLED wil, is de Samsung Neo QLED QN90F de meest courante keuze in het high-end lcd-segment. Dit 2025-model maakt gebruik van geavanceerde Mini-LED-technologie, waardoor de helderheid veel hoger ligt dan bij OLED-schermen. Dat maakt hem ideaal voor een zonovergoten woonkamer. Met een verversingssnelheid die oploopt tot 144 Hz en een extreem lage invoervertraging, is dit voor veel competitieve gamers de favoriete keuze.

Drie monitors met 120 Hz of meer

Bij monitors ligt de standaard tegenwoordig al hoger dan 120 Hz, omdat snelheid de uitkomst van een potje schieten of racen bepaalt. Deze modellen zijn populair op Kieskeurig.

Op het gebied van monitoren zien we dat 240 Hz langzaam de nieuwe standaard wordt voor de serieuze gamer. Een model dat momenteel erg goed scoort op Kieskeurig is de LG UltraGear 27GR83Q. Dit is een 27-inch IPS-scherm met een razendsnelle verversingssnelheid van 240 Hz. In tegenstelling tot oudere modellen biedt dit scherm een extreem snelle responstijd van 1 milliseconde, waardoor je in snelle shooters geen last hebt van wazige beelden. Het is een van de meest complete monitoren van dit moment die zowel voor pc als console geschikt is.

Zoek je de absolute top in beeldkwaliteit, dan is de Samsung Odyssey G6 (G60SD) een model dat je veel ziet. Dit is een moderne OLED-monitor met een verversingssnelheid van maar liefst 360 Hz. Hoewel dat misschien overkill klinkt, zorgt de combinatie van de OLED-techniek en deze snelheid voor een ongekend vloeiende en scherpe ervaring. Het scherm heeft bovendien een nieuw koelsysteem waardoor de kans op inbranden – een angst bij oudere OLED-monitoren – aanzienlijk is verkleind.

Voor wie een beperkter budget heeft maar wel snelheid wil, is de MSI MAG 27CQ6F een actuele hardloper. Dit is een gebogen scherm (Curved) met een snelheid van 180 Hz, wat net dat beetje extra soepelheid geeft ten opzichte van de standaard 144 Hz-schermen. Het paneel biedt een hoog contrast en is daarmee een uitstekende instapper voor wie zijn game-ervaring wil upgraden zonder direct de hoofdprijs te betalen.