ID.nl logo
Zo kun je programmeren in Python - Deel 1
© Reshift Digital
Zekerheid & gemak

Zo kun je programmeren in Python - Deel 1

Vanaf nu vind je op Computer!Totaal een meerdelige cursus over een van de meestgebruikte programmeertalen ter wereld: Python. Python heeft een heldere structuur die redelijk snel te leren is en heeft veel mogelijkheden. Niet voor niets wordt het op allerlei plekken ingezet, bijvoorbeeld als scripttaal voor het automatisch uitvoeren van taken op een besturingssysteem, het programmeren van een Raspberry Pi en ook werken veel websites ermee.

In dit eerste deel over Python maak je kennis met deze populaire programmeertaal en leg je een stevige basis voor het schrijven hierin. Daarna installeren we Python en leggen we uit hoe je met de interpreter werkt. We zetten ook onze eerste kleine programmeerstapjes door je te laten kennismaken met getallen en tekst.

Python

Programmeren is niets anders dan aan een computer instructies geven die hij moet uitvoeren. Een computer is geen mens, wat maakt dat hij heel expliciete instructies nodig heeft. Die geef je daarom in een programmeertaal: een formeel gedefinieerde taal die alles duidelijk uitspreekt, zodat de computer je goed verstaat.

Net zoals er heel wat talen bestaan in de wereld van de mensen, bestaan er ook enorm veel programmeertalen. Een populaire programmeertaal voor algemeen gebruik is Python, overigens uitgevonden door een Nederlander, Guido van Rossum. De Python-gemeenschap besteedt veel aandacht aan leesbaarheid van de code. De programmeertaal staat al sinds 2003 jaarlijks in de top 10 van de meest populaire programmeertalen van Tiobe. Veel grote bedrijven gebruiken Python en ook heel wat software voor de Raspberry Pi is in Python geschreven. Kortom, als je Python kent, is je programmeerkennis op allerlei domeinen nuttig.

Python 2 en 3

Als we het over Python hebben, bedoelen we Python 3, de nieuwste versie van Python. Versie 3.0 kwam al in 2008 uit en momenteel zijn we al bij Python 3.7. Je ziet ook nog veel Python 2-code, hoewel Python 2 door de ontwikkelaars van Python vanaf 2020 niet meer wordt ondersteund. Voor onze reeks maakt het niet zo veel uit, maar als je je bezig gaat houden met wat geavanceerdere zaken, kom je zeker Python 2-code tegen die niet in Python 3 werkt en andersom.

Python installeren

Python is opensource en draait zowel op Windows als op macOS en Linux. Je kunt de programmeeromgeving gratis downloaden. Download de nieuwste Python3-release voor je besturingssysteem. Op het moment van schrijven is dat Python 3.7.1. Gebruik je Linux, dan is Python in principe standaard al geïnstalleerd. Is dat toch niet het geval, installeer Python 3 dan met de pakketbeheerder van je Linux-distributie. Mogelijk installeert dat niet de recentste versie, maar dat maakt voor onze reeks niet uit.

In Windows kies je de executable installer voor 64 bit of 32 bit, afhankelijk van je Windows-versie. Vink in het eerste venster van het installatieprogramma Install launcher for all users en Add Python to PATH aan. Na de installatie kun je controleren of Python correct geïnstalleerd is met de volgende opdrachtregel in een Opdrachtprompt:

python --version

Je ziet dan het versienummer van je Python-installatie.

Werken met de Python-interpreter

Het programma python dat we hierboven hebben uitgevoerd, is de Python-interpreter. Dit programma vertaalt code in de Python-programmeertaal naar machinecode die je computer verstaat. Als je die Python-interpreter uitvoert, krijg je iets als het volgende te zien (het versienummer en de datum kunnen bij jou verschillen):

Python 3.6.5 (default, Apr[GCC 7.3.0] on linuxType "help", "copyright", "credits" or "license" for more information.>>>

De drie groter dan-tekens is de opdrachtprompt die aangeeft dat de Python-interpreter op je opdrachten wacht. Je krijgt onmiddellijk al te zien wat enkele mogelijke opdrachten zijn.

Wat je niet te zien krijgt, is hoe je de Python-interpreter weer verlaat. Daarvoor typ je exit() of quit() of druk je op Ctrl+D.

Cursus Python

Wil je dieper in de mogelijkheden van Python duiken, dan bieden wij een uitgebreide Tech Academy cursus aan.

Werken in een Python-ontwikkelomgeving

De Python-interpreter is voldoende om kort enkele Python-opdrachtjes uit te proberen, maar om een volwaardig Python-programma te schrijven, heb je een ontwikkelomgeving nodig. Er bestaan diverse ontwikkelomgevingen voor Python, maar als beginner kun je volstaan met Thonny, dat standaard wordt geïnstalleerd bij Python vanaf versie 3.7. Pas in het derde deel gaan we op Thonny in.

Python als een rekenmachine

Open opnieuw de Python-interpreter. We gaan nu met getallen werken. In feite kun je de Python-interpreter als een geavanceerde rekenmachine gebruiken:

>>> 1+12>>> 1.5*34.5>>> (212-32)*5/9100.0>>> 20*1.8+3268.0>>> 3**481

De laatste berekening is misschien niet vertrouwd als notatie: de operator ** berekent de macht van een getal. 3**4 is dus 3 tot de 4e macht.

Na elke opdracht toont Python zijn uitvoer en kun je een nieuwe opdracht invoeren. Met de pijltjestoetsen kun je door je al ingevoerde opdrachten bladeren om dezelfde opdracht opnieuw in te voeren of aan te passen.

Python kent twee types getallen: int (gehele getallen) en float (getallen met komma, door Python weergegeven als een decimale punt). Als je alleen met gehele getallen rekent en geen deling uitvoert, is het resultaat ook een geheel getal. Maar zodra er een float in je berekening voorkomt (zoals in 20*1.8+32) of je door een getal deelt (zelfs door een int, zie (212-32)*5/9), is het resultaat een float. Dat zie je doordat Python een decimale punt gebruikt, zelfs als het resultaat een geheel getal is (100.0).

Delen

We zagen dat je getallen deelt met de operator /. Dat geeft als resultaat altijd een float:

>>> 7/32.3333333333333335

Maar je hebt ook de operator // waarmee je een gehele deling uitvoert. Dat wil zeggen dat het deel na de komma wordt genegeerd en je als resultaat een int krijgt:

>>> 7//32

Je kunt ook de rest van de deling door een getal opvragen, namelijk met de operator %:

>>> 7%31

En dat klopt, want als we de twee vorige berekeningen samennemen, kunnen we eenvoudig narekenen dat 7 gelijk is aan 3*2+1.

Overigens werken de operatoren // en % ook voor niet-gehele getallen:

>>> 7.5/2.13.571428571428571>>> 7.5//2.13.0>>> 7.5%2.11.1999999999999997

Types

Je hebt nu kennisgemaakt met de twee typen getallen: int en float. Het type van een getal of een berekening kun je eenvoudig opvragen:

>>> type(1+1)<class 'int'>>>> type(7.5)<class 'float'>>>> type(7.5//2.1)<class 'float'>>>> type(7//3)<class 'int'>

Merk op: het resultaat van 7.5//2.1 is 3.0, wat een float is.

Je kunt getallen ook omzetten van het ene naar het andere type:

>>> float(1+1)2.0

>>> int(2.5)2

Als je een int naar float omzet, dan blijft de waarde van het getal hetzelfde; zet je een float naar int om, dan wordt de waarde na de komma afgebroken.

Variabelen

Als je de Python-interpreter als rekenmachine gebruikt, wil je misschien de vorige waarde als onderdeel van een volgende berekening gebruiken zonder dat je die helemaal opnieuw hoeft in te typen. Dat kan eenvoudig met de variabele _:

>>> 7/32.3333333333333335>>> _*511.666666666666668

Een variabele is een naam die je aan een waarde geeft. De Python-interpreter kent automatisch de laatste waarde toe aan de variabele _. Maar je kunt ook zelf variabelen aanmaken met een willekeurige naam, zolang het niet dezelfde naam is als een geregistreerd woord uit de Python-taal. Vervolgens kun je die variabelen gewoon in de plaats van de getallen die ze voorstellen gebruiken:

>>> teller=7>>> noemer=3>>> resultaat=teller//noemer>>> rest=teller%noemer>>> teller7>>> noemer3>>> resultaat2>>> rest1>>> type(rest)<class 'int'>

Verwijs je naar een variabele waar je nog geen waarde aan hebt toegekend, bijvoorbeeld door een typfout, dan krijg je een foutmelding:

>>> type(deltal)Traceback (most recent call last):File "<stdin>", line 1, in <module>NameError: name 'deltal' is not defined

Tekst

Python kent naast int en float nog heel wat andere ingebouwde types. Een veelgebruikt datatype is str, dat we vaak voluit string noemen. Een string stelt tekst voor, bijvoorbeeld 'Dit is een tekst'. Een string mag je zowel tussen dubbele als enkele aanhalingstekens zetten. Goed gebruik is wel om voor jezelf altijd één keuze te maken.

Omdat de aanhalingstekens worden gebruikt om het begin en einde van een string aan te geven, moet je iets speciaals doen als je ze in je tekst zelf wilt gebruiken: je dient ze te ‘escapen’. Dat doe je door er een backslash voor te zetten. Bijvoorbeeld: 'Dit is een \'tekst\''.

Net zoals we bewerkingen op getallen kunnen uitvoeren, kan dat ook op tekst. Enkele voorbeelden maken dit duidelijk:

>>> 'Py' 'thon''Python'>>> 'Py'+'thon''Python'>>> 3*'Py'+2*'thon''PyPyPythonthon'

Daarnaast kun je allerlei functies op een string toepassen:

>>> len('zandzeepsodamineraalwatersteenstralen')
37>>> 'dit is een TEKST'.capitalize()'Dit is een tekst'>>> 'dit is een TEKST'.lower()'dit is een tekst'>>> 'dit is een TEKST'.upper()'DIT IS EEN TEKST'>>> 'dit is een TEKST'.swapcase()'DIT IS EEN tekst'

In het tweede deel, leer je hoe je met individuele letters in een tekst om kunt gaan.

Opdracht

Maak een variabele teller met de waarde 24.3 en een variabele noemer met de waarde 8.1. Maak een variabele resultaat met als waarde teller gedeeld door noemer en zorg ervoor dat dit als geheel getal (dus niet als float) wordt weergegeven.

Uitwerking

>>> teller=24.3*>>> noemer=8.1**>>> resultaat=int(teller/noemer)**>>> resultaat* De eerste twee regels spreken hopelijk voor zich. In de derde regel delen we de teller door de noemer en wijzen de uitkomst toe aan resultaat. Zouden we het hierbij laten, dan zou de uitkomst weergegeven worden als 3.0. Door het type int toe te wijzen aan resultaat, wordt de uitkomst als geheel getal weergegeven, in dit geval dus 3.

Samenvatting

In deze eerste les heb je kennisgemaakt met de programmeertaal Python. Je kunt met de Python-interpreter werken en je hebt kennisgemaakt met basisbewerkingen op getallen en strings. Je weet ook wat datatypes en variabelen zijn. In de deel 2 gaan we met complexere datatypes aan de slag.

Cheatsheet

int (integer) = geheel getal float (floating-point arithmetic) = breuk of kommagetal str (string) = tekenreeks operator = bewerking

▼ Volgende artikel
Black Friday 2025 bij Coolblue: dit zijn de 10 beste deals van vandaag
© Coolblue
Huis

Black Friday 2025 bij Coolblue: dit zijn de 10 beste deals van vandaag

De afgelopen weken zag je al overal Black Friday-aanbiedingen voorbij komen, maar vandaag barst het echt los. Hieronder zie je welke deals bij Coolblue je echt niet wilt missen. Wees er snel bij, want: op = op!

Partnerbijdrage - in samenwerking met Coolblue

Philips Hue White Ambiance GU10 3-pack

Met de Philips Hue White Ambiance GU10 spots bepaal je met één druk op de knop precies de juiste sfeer in huis. Ze geven alle tinten wit licht, van koel en helder voor overdag tot zacht warm licht voor een ontspannen avond. Je bedient de verlichting eenvoudig via bluetooth, of breidt de mogelijkheden uit met een Hue Bridge om routines in te stellen en het licht ook buitenshuis te regelen. De spots reageren bovendien op spraak via Google Assistent, Alexa en Siri. Met deze deal haal je er meteen drie in huis!

Philips Hue White Ambiance GU10 3-pack

Adviesprijs 69,99 euro. Nu voor 37,99 euro. Dat betekent bijna 46% korting!

TCL 55" QD Mini-led C61K 4K

De TCL 55" QD Mini-led C61K 4K combineert helder beeld met diepe contrasten en natuurgetrouwe kleuren. Dankzij de mini-ledverlichting met local dimming blijven donkere scènes echt donker, terwijl felle details zoals zonlicht of vuur helder oplichten zonder grijze waas. De quantum-dotlaag zorgt voor levendige, realistische kleuren die in elke scène tot hun recht komen. Het geluid komt van drie ingebouwde Onkyo-speakers, goed voor een vol en helder klankbeeld. Een complete 55 inch tv die zich onderscheidt in beeld én geluid.

TCL 55" QD Mini-led C61K 4K

Adviesprijs 699 euro. Nu voor 499 euro. Dat betekent bijna 29% korting!

Samsung Galaxy A56 256GB Zwart 5G

De Samsung Galaxy A56 256GB Zwart 5G biedt veel snelheid en ruimte in een strak ontwerp. Het 6,7 inch full-hd-scherm laat games, video's en foto's haarscherp zien, terwijl de krachtige hardware moeiteloos meerdere apps tegelijk aankan. Met de drie camera's op de achterkant leg je beelden vast in 4K-kwaliteit en dankzij het ruime opslaggeheugen heb je plaats voor al je foto's en bestanden. De 5.000 mAh-batterij houdt het bij normaal gebruik de hele dag vol, zodat je zonder zorgen online blijft.

Samsung Galaxy A56 256GB Zwart 5G

Adviesprijs 529 euro. Nu voor 319 euro. Dat betekent bijna 40% korting!

Apple iPad (2025) 11 inch 128GB Wifi

De Apple iPad (2025) 11 inch 128GB Wifi is een snelle en betrouwbare tablet voor alledaags gebruik. Het scherpe display toont films, series en foto's in levendige kleuren en fijne details. Dankzij de vlotte prestaties schakel je moeiteloos tussen apps, blader je door websites en speel je lichte games zonder haperingen. Perfect voor wie een iPad zoekt voor dagelijks gebruik.

Apple iPad (2025) 11 inch 128GB Wifi

Adviesprijs 409 euro. Nu voor 349 euro. Dat betekent bijna 15% korting!

Bosch WGG244ZONL

De Bosch WGG244ZONL (serie 6) combineert kracht met stilte en zuinigheid. Met 9 kilo vulgewicht is er genoeg ruimte voor een volle week was, terwijl het maximale geluidsniveau van 70 decibel zorgt dat je ook tijdens het thuiswerken kunt wassen zonder hinder. Dankzij energieklasse A verbruik je minimaal, zelfs bij kleine wasjes. Met het Iron Assist-programma stoom je snel kreukels uit overhemden of shirts, en met SpeedPerfect verkort je wasprogramma's tot wel 65% – ideaal als je haast hebt.

Bosch WGG244ZONL

Adviesprijs 939 euro. Nu voor 599 euro. Dat betekent ruim 36% korting!

Ninja Foodi AirFryer AF300EU

De Ninja Foodi AirFryer AF300EU heeft twee aparte baklades, zodat je friet en vlees tegelijk bereidt zonder dat iets te vroeg klaar is. Dankzij de Sync-functie lopen beide bereidingen perfect gelijk. Met zes kookstanden – van bakken en roosteren tot opwarmen en drogen – maak je met gemak een complete maaltijd voor het hele gezin. De airfryer haalt een temperatuur tot 240 graden voor extra knapperige resultaten, en na het eten gaan de losse onderdelen gewoon in de vaatwasser.

Ninja Foodi AirFryer AF300EU

Adviesprijs 229 euro. Nu voor 109 euro. Dat betekent ruim 52% korting!

Philips FC9745/09 PowerPro Expert

De Philips FC9745/09 PowerPro Expert levert krachtige zuigprestaties op elk vloertype. Met de parketborstel reinig je houten vloeren voorzichtig, terwijl de tapijtborstel laagpolig tapijt grondig schoonmaakt. Wissel je liever niet steeds van opzetstuk, dan gebruik je de TriActive+ combizuigmond die moeiteloos schakelt tussen harde vloeren en tapijt. Voor dierenharen en grove vloerkleden is er de turboborstel. Dankzij de PowerCyclone 8-techniek blijft de zuigkracht hoog, zelfs bij een volle stofbak, en met de actieradius van 10 meter bereik je een hele verdieping zonder van stopcontact te wisselen.

Philips FC9745/09 PowerPro Expert

Adviesprijs 279,99 euro. Nu voor 159 euro. Dat betekent ruim 43% korting!

eufy X10 Pro Omni

De eufy X10 Pro Omni neemt het schoonmaken volledig van je over. In het slimme basisstation leegt hij automatisch zijn stofbak, vult de watertank bij en wast én droogt zijn dweilpads. Met een zuigkracht van 8000 Pascal verwijdert hij moeiteloos vuil, terwijl de draaiende dweilpads hardnekkige vlekken aanpakken. Dankzij lasernavigatie en slimme objectherkenning rijdt de robot doelgericht door je huis zonder vast te lopen. Op tapijt verhoogt hij automatisch de zuigkracht en tilt hij de dweilpads op, zodat je niet hoeft te wisselen tussen stofzuigen en dweilen. Alles regel je eenvoudig via de app, waar de robot steeds beter leert hoe jouw huis in elkaar zit.

eufy X10 Pro Omni

Adviesprijs 699 euro. Nu voor 439 euro. Dat betekent ruim 37% korting!

Dyson Supersonic Straight + Wavy Prussian Blue

De Dyson Supersonic Straight + Wavy Prussian Blue droogt en stylet je haar snel en zorgvuldig. Dankzij de slimme warmteregeling blijft de temperatuur constant, zodat je haar beschermd blijft tegen hitte. De motor zit in het handvat, wat zorgt voor een lichte en goed gebalanceerde föhn die prettig in de hand ligt. Met de drie meegeleverde opzetstukken tem je pluizig haar, droog je fijn haar extra zacht en geef je steil of golvend haar een glanzende finish. Gebruik de koude stand om je coupe langer in model te houden.

Dyson Supersonic Straight + Wavy Prussian Blue

Adviesprijs 429 euro. Nu voor 279 euro. Dat betekent bijna 35% korting!

Sonos Era 100 Zwart

De Sonos Era 100 Zwart vult elke kamer met rijk, helder geluid en sluit moeiteloos aan op je dagelijkse routine. Je streamt muziek via wifi, bluetooth of AirPlay en bedient alles eenvoudig met de Sonos-app. Combineer meerdere speakers voor multiroom-geluid of koppel de Era 100 aan een Sonos-soundbar voor volwaardig surround-geluid bij films en series. Met Amazon Alexa regel je de speaker met je stem, en dankzij Spotify Connect speel je direct af vanaf je telefoon.

Sonos Era 100 Zwart

Adviesprijs 229 euro. Nu voor 179 euro. Dat betekent bijna 22% korting!

▼ Volgende artikel
Black Friday op Kieskeurig.nl: de best geteste tv’s van 2025 mét actuele deals
© Gorodenkoff - stock.adobe.com
Huis

Black Friday op Kieskeurig.nl: de best geteste tv’s van 2025 mét actuele deals

Kieskeurig.nl en ID.nl laten ieder jaar de beste televisies testen door Eric Beeckmans. We hebben ontdekt dat een aantal van deze tv's nu ook tijdens Black Friday enorm in prijs zijn gedaald, waardoor het voordeel kan oplopen tot wel enkele honderden euro's! Lees snel verder voor een overzicht van de tv's met de laagste prijzen!

LG OLED evo AI 65C54LA

De LG OLED65C54LA is een kleine update van LG’s populaire C‑serie. Het paneel biedt betere piekhelderheid en een uitstekende fabriekskalibratie. De tv ondersteunt Dolby Vision en HDR10, en dankzij vier HDMI 2.1‑poorten is hij geschikt voor gamen. WebOS 25 reageert snel en LG belooft vijf jaar software‑updates, maar de startpagina bevat advertenties. Daarnaast ontbreken HDR10+ en DTS‑ondersteuning.

Adviesprijs 2.099 euro / Actuele prijs:

Sony Bravia 8 II K‑65XR8M2

De Sony Bravia 8 II K‑65XR8M2 levert een indrukwekkend beeld met veel detail, goede schaduwwerking en sterke beeldverwerking. De OLED‑tv ondersteunt Dolby Vision en gebruikt Google TV, maar heeft slechts twee HDMI 2.1‑poorten (maximaal 4K @ 120 Hz) en haalt een iets lagere piekhelderheid dan concurrenten. Dankzij het Acoustic Surface‑audiosysteem klinkt hij beter dan veel platte tv’s en Sony Pictures Core biedt toegang tot films.

Adviesprijs 3.699 euro / Actuele prijs:

TCL 55C6K

De TCL 55C6K is een betaalbare mini‑LED‑tv met 180 local‑dimmingzones. In SDR levert hij mooie kleuren, maar in HDR is het contrast en de piekhelderheid relatief beperkt. Filmmaker‑ en film­modus zijn goed gekalibreerd en Google TV biedt een uitgebreid app‑aanbod. Twee HDMI 2.1‑poorten ondersteunen 4K @ 120 Hz en variabele refresh rates. Voor de prijs biedt de tv goede prestaties, al is de C6K soms duurder dan de betere C7K.

Adviesprijs 899 euro / Actuele prijs:

Philips 65OLED950

De Philips 65OLED950 is een high‑end OLED‑tv met het META‑3‑paneel, waardoor hij recordbrekende piekhelderheid en contrast levert. De vierzijdige Ambilight en uitstekende beeldverwerking maken HDR‑content zeer indrukwekkend. De tv ondersteunt alle HDR‑formaten, heeft goede gamingfuncties met twee HDMI 2.1‑poorten en biedt Google TV en AirPlay 2. Het geluid is ruimtelijk met Dolby Atmos en DTS:X, al zijn er soms lichte banding‑artefacten in donkere scènes.

Adviesprijs 3.499 euro / Actuele prijs:

LG OLED EVO 65G56LS

De LG OLED EVO 65G56LS (G5) tilt OLED naar een nieuw niveau. De tv gebruikt een vernieuwd paneel met hoge piekhelderheid en groot kleurbereik; het dynamische Filmmaker‑profiel is nagenoeg referentiekwaliteit. Het Alpha 11‑procesor en WebOS 25 zorgen voor soepele beelden en handige AI‑functies, al leveren die laatste weinig meerwaarde. De ingebouwde luidsprekers klinken goed, maar DTS ontbreekt. Gamers profiteren van vier HDMI 2.1‑poorten en 4K @ 144 Hz. De prijs is hoog, maar LG levert vijf jaar software‑updates.

Adviesprijs 3.299 euro / Actuele prijs:

LG OLED65B4

De LG OLED65B4 biedt OLED‑prestaties tegen een relatief lage prijs. Het paneel is iets minder helder dan de topmodellen, maar biedt toch een mooi contrast en goede HDR‑beelden in Dolby Vision. De Alpha8‑processor levert nette beeldverwerking, al kunnen lichte banding‑verschijnselen in kleurverlopen voorkomen. WebOS 24 met vijf jaar updates is gebruiksvriendelijk. Vier HDMI 2.1‑poorten ondersteunen 4K @ 120 Hz en VRR.


Adviesprijs 1.599 euro / Actuele prijs:

Samsung QE55QN85D

De Samsung QE55QN85D is een Neo QLED‑tv met solide prestaties maar zonder echte uitschieters. Het mini‑LED‑paneel biedt veel helderheid, goede contrasten en een groot kleurbereik; de Filmmaker‑modus is netjes gekalibreerd. Tizen Smart Hub levert veel functies en vier HDMI 2.1‑poorten maken de tv geschikt voor gamers. Geluid is redelijk, maar Dolby Vision en DTS ontbreken en het aantal dimmingzones beperkt de uniformiteit.

Adviesprijs 1.199 euro / Actuele prijs: