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
Bespaar nu al op de nieuwste Samsung Galaxy bij Belsimpel!
Huis

Bespaar nu al op de nieuwste Samsung Galaxy bij Belsimpel!

Nu de presentatie van de nieuwe Samsung Galaxy-topreeks nadert, draait de geruchtenmolen op volle toeren. Terwijl de techwereld uitkijkt naar de officiële onthulling op 25 februari, rijst de vraag hoe jij deze smartphone als eerste in huis haalt zonder meteen de hoofdprijs te betalen. Bij Belsimpel staat de deur al op een kier voor vroege vogels die willen profiteren van scherpe kortingen.

Partnerbijdrage - in samenwerking met Belsimpel

Het mag geen verrassing zijn dat Samsung dit jaar vol inzet op wat zij noemen 'een nieuw tijdperk voor AI', waarbij de hardware volledig in dienst staat van slimme software. Of je nu razendsnel tekst wilt vertalen of je foto’s naar een professioneel niveau wilt tillen zonder ingewikkelde bewerkingsprogramma’s, de nieuwe generatie toestellen is ontworpen om dit soort processen vloeiender dan ooit te laten verlopen. De relevantie van deze upgrade zit 'm vooral in de naadloze integratie van AI in je dagelijkse handelingen, waardoor je telefoon proactief met je meedenkt in plaats van alleen commando's uitvoert.

Haal deze nieuwe Galaxy S via Belsimpel als eerste in huis!

©Samsung

Komende woensdag wordt bekend hoe de opvolger van de Galaxy S25 er uit zal zien.

Krachtige techniek onder de motorkap

Achter de vertrouwde schermen schuilt een flinke dosis nieuwe rekenkracht. Voor de Europese markt wijzen alle signalen op het gebruik van de eigen Exynos 2600-chip, die qua prestaties niet onderdoet voor de krachtigste processors van de concurrentie. In de praktijk betekent dit dat apps sneller opstarten en zware taken, zoals het renderen van video’s of intensief gamen, moeiteloos worden afgehandeld.

Het meest opvallende aan de nieuwe Ultra-variant is de mogelijke overstap naar de Snapdragon 8 Elite Gen 5, die met een indrukwekkende kloksnelheid van 4,74 GHz de absolute top van de markt opzoekt. Gecombineerd met een standaard opslagcapaciteit die is verdubbeld naar 256 GB heb je direct genoeg ruimte voor al je media en applicaties zonder dat je je zorgen hoeft te maken over een volgelopen geheugen.

Visuele beleving voor elk moment

De visuele ervaring blijft een speerpunt met drie verschillende schermformaten die variëren van handzaam tot gewoon lekker groot. Of je nu kiest voor de reguliere 6,3-inch variant of het indrukwekkende 6,9-inch scherm van de Ultra, de variabele verversingssnelheid zorgt ervoor dat animaties altijd vloeiend ogen terwijl de batterij wordt gespaard tijdens het lezen van tekst.

Voor de fotografieliefhebber brengt de nieuwe generatie verbeterde camerasoftware, die ruis minimaliseert en details verscherpt, zelfs als de lichtomstandigheden verre van ideaal zijn. Met de mogelijkheid om video's in 8K-resolutie op te nemen, leg je herinneringen vast in een kwaliteit die nog wel even mee kan.

©Samsung

Ook de Galaxy S25 Ultra krijgt dit jaar uiteraard een opvolger.

Welke moet je hebben?

Het vinden van de juiste match hangt natuurlijk af van hoe je je toestel gebruikt. Voor de gebruiker die veel onderweg is en waarde hecht aan een compact toestel dat makkelijk met één hand te bedienen is, blijft het basismodel de meest logische keuze. Wie echter de grenzen van mobiele fotografie wil opzoeken of een groot canvas nodig heeft voor werk en entertainment, vindt in de Ultra-opvolger de nodige extra's, zoals een groter diafragma voor superieure nachtfotografie. Het Plus-model vormt hierbij de gulden middenweg voor wie een groot scherm wenst zonder direct over te stappen naar de meest geavanceerde (camera)technologie.

Direct profiteren van persoonlijke voordelen

Het omarmen van al deze nieuwe technologie hoeft niet ingewikkeld te zijn. Belsimpel maakt de overstap extra aantrekkelijk door een systeem van persoonlijke kortingscodes aan te bieden aan iedereen die zich vooraf inschrijft. Hierdoor combineer je het voordeel van de nieuwste hardware met een direct financieel extraatje.

Wanneer je je aanmeldt bij Belsimpel , ontvang je niet alleen toegang tot exclusieve prijzen, maar profiteer je ook van 200 euro opslagvoordeel en een cashback van 30 euro. De ideale manier om direct bij release de beste deal te bemachtigen voor jouw nieuwe dagelijkse compagnon.

Klaar voor de opvolger?

Meld je hier vast aan voor extra voordeel!

Jouw weg naar de nieuwe Galaxy

De officiële onthulling vindt plaats op 25 februari om 19.00 uur Nederlandse tijd. Je kunt dit evenement live volgen via de kanalen van Belsimpel, waarbij je ook nog eens kans maakt om een van de nieuwe toestellen te winnen. Door je nu alvast in te schrijven via de actiepagina van Belsimpel, verzeker je jezelf van de hoogste korting en ben je als een van de eersten op de hoogte van alle officiële specificaties.

De opvolgers van de Samsung Galaxy S25-serie bieden met de Exynos 2600-chip en uitgebreide AI-functies een krachtige upgrade voor elke gebruiker. Dankzij een verdubbelde standaardopslag van 256 GB en geavanceerde camera-opties met 8K-video is het toestel volledig voorbereid op de toekomst. Door je vooraf in te schrijven bij Belsimpel, profiteer je van exclusieve kortingen tot wel 230 euro! Het Galaxy Unpacked-evenement op 25 februari markeert het officiële startpunt van dit nieuwe AI-tijdperk.

Maak je ecosysteem compleet!

Naast de nieuwe smartphones onthult Samsung op 25 februari ook de langverwachte opvolgers van de Galaxy Buds 3 Pro. Of je nu op zoek bent naar nog betere ruisonderdrukking of een kristalhelder geluid voor je favoriete playlists, deze nieuwe oortjes zijn ontworpen om naadloos samen te werken met de nieuwste Galaxy-toestellen. Goed nieuws voor wie direct wil upgraden: ook op deze nieuwe Buds geeft Belsimpel direct bij de lancering een hoge korting. Zo geniet je niet alleen van de nieuwste techniek in je broekzak, maar ook van de beste audio-ervaring in je oren tegen een extra scherpe prijs!

▼ Volgende artikel
Nintendo toont morgen meer van Pokémon Pokopia en Switch 2-versie Mario Wonder
© Nintendo, The Pokémon Company, GAME FREAK inc. en KOEI TECMO GAMES
Huis

Nintendo toont morgen meer van Pokémon Pokopia en Switch 2-versie Mario Wonder

Nintendo zendt morgenavond een 'Treehouse Live'-livestream uit, waar meer getoond wordt van Pokémon Pokopia en de aankomende Switch 2-update van Super Mario Bros. Wonder.

Dat kondigde het bedrijf vanmiddag via social media aan. De livestream, die morgenavond om 23:00 uur Nederlandse tijd begint, valt hier live te bekijken. In Treehouse Live spelen werknemers van Nintendo aankomende Switch (2)-games, waardoor kijkers meer informatie krijgen over wat hen ten wachten staat.

Watch on YouTube

Over Pokémon Pokopia

In Pokémon Pokopia kunnen spelers een eiland zo inrichten dat het uitnodigend wordt voor verschillende pokémon. Door nieuwe pokémon aan te trekken, krijgen mensen ook weer mogelijkheden om de omgeving verder uit te bouwen. In die zin voelt de game als een combinatie tussen de Pokémon-games en Animal Crossing. De game komt op 5 maart uit voor Nintendo Switch 2.

ID-redacteur Dwayne ging onlangs al aan de slag met Pokémon Pokopia en schreef een uitgebreide preview: "Pokémon Pokopia brengt je straks bij de volledige versie een prettig pakket waarin de terraforming uit Minecraft samenkomt met de verzameldrift, ontwerpzucht en het saamhorigheidsgevoel uit Animal Crossing. De warme, volvette en oh zo smaakvolle pokémonsaus eroverheen zorgt voor een werkelijk feest der herkenning waarvan de eindtijd het liefst nooit aanbreekt."

View post on X

Over de Switch 2-versie van Super Mario Bros. Wonder

Super Mario Bros. Wonder verscheen in 2023 al voor Nintendo Switch, maar op 26 maart komt een Switch 2-editie uit genaamd Super Mario Bros. Wonder – Nintendo Switch 2 Edition + Samen naar het Bellabelpark. Deze Switch 2-versie van de Switch-game kan gekocht worden als betaalde upgrade voor mensen die de Switch-versie al in het bezit hebben, of als complete editie voor Switch 2 voor nieuwe eigenaren.

De game bevat nieuwe content in de vorm van Samen naar het Bellabelpark. Dit is een nieuw gebied in het Bloemenrijk met twee pleinen vol met attracties, waar spelers met of tegen elkaar uitdagingen kunnen ervaren. Zo kan men Bubbelknaller spelen, waarin spelers uitgedaagd worden om de meeste levens over te houden, of Tip Taps Muntenfeest, waarin zoveel mogelijk muntjes verzameld moeten worden. In totaal zijn er zeventien verschillende attracties om te ervaren met maximaal drie andere spelers. Ook over de Switch 2-versie van Super Mario Bros. Wonder schreef Dwayne al een preview, die je hier kunt lezen.