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
Meer tijd, minder gedoe: deze Amazon-deals maken je leven een stuk makkelijker!
© ER | ID.nl
Huis

Meer tijd, minder gedoe: deze Amazon-deals maken je leven een stuk makkelijker!

Klaar voor een serieuze upgrade van je huis en ochtendroutine? Soms zijn er deals die je gewoon niet mag missen. Wij visten de pareltjes uit het Amazon-aanbod: drie premium gadgets die het leven makkelijker én mooier maken. Pak nu tot 42 procent korting op deze absolute publieksfavorieten.

Technologie is op zijn best als je er eigenlijk niet over na hoeft te denken. Als het klusjes uit handen neemt, je helpt om sneller de deur uit te kunnen of zorgt voor een veiliger gevoel. Maar laten we eerlijk zijn: voor die premium kwaliteit betaal je vaak de hoofdprijs.

Tenzij je het juiste moment afwacht.

Op dit moment vind je bij Amazon een aantal opvallend lekkere deals op high-end apparatuur. We hebben drie producten geselecteerd die niet alleen bekendstaan om hun kwaliteit, maar nu ook tijdelijk een wel heel vriendelijk prijskaartje hebben. Van een robot die werkelijk alles zelf doet tot een haarstyler die viral gaat: dit zijn de aanraders!

©Dreame

Dreame L40s Pro Ultra - nooit meer dweilen

Robotstofzuigers zijn er in alle soorten en maten, maar de Dreame L40s Pro Ultra valt in de categorie gamechangers. Dit is geen apparaat waar je alsnog achteraan moet lopen, het is een volledig autonoom schoonmaaksysteem.

Dankzij de MopExtend-technologie reikt de dweilarm tot in de lastigste hoekjes en langs plinten, plekken die standaard robotstofzuigers normaal gesproken overslaan. Hij zuigt met brute kracht (tot 19.000 Pa), dweilt én keert zelf terug naar zijn basisstation. Daar wordt de robot niet alleen geleegd, maar worden de dweilen ook gewassen én met hete lucht gedroogd. Dat laatste is echt wel een dingetje, want het voorkomt nare geurtjes en schimmelvorming. Top dus!

Normaal vergt dit vlaggenschip een forse investering, maar met de huidige deal wordt dit soort luxe ineens een stuk bereikbaarder, want je krijgt nu tijdelijk 35 procent korting op de adviesprijs.

Bekijk de Dreame L40s Pro Ultra bij Amazon

©Shark

Shark FlexStyle 5-in-1 - voor een salonwaardige look

De Shark FlexStyle heeft de beautywereld behoorlijk opgeschud. Het belooft dezelfde veelzijdigheid en resultaten als de bekende concurrentie, maar dan voor een fractie van de prijs. En met de huidige Amazon-actie wordt dat prijsverschil wel érg groot.

Dit is een krachtige haardroger en veelzijdige multistyler in één. Of je nu gaat voor krullen, volume, stijl haar of gewoon snel drogen: met de vijf opzetstukken kan het allemaal. Het belangrijkste pluspunt? Hij gebruikt luchtstroom in plaats van extreme hitte. Hierdoor blijft je haar glanzend en gezond, zelfs als je dagelijks je look verandert. Hij is licht, compact en draait makkelijk om van droger naar styler. Dit is dan ook de klapper van de week met 42 procent korting!

Bekijk de Shark FlexStyle 5-in-1 bij Amazon

©Amazon

Ring Battery Video Doorbell Pro - wie staat er voor de deur?

Een slimme deurbel is vaak de eerste stap naar een slim huis, en de Ring Battery Video Doorbell Pro is in zijn klasse de topkeuze. Het grootste voordeel van dit model is de flexibiliteit: omdat hij op een verwisselbare batterij werkt, installeer je hem binnen enkele minuten op elke gewenste plek, zonder gedoe met bedrading.

De 'Pro'-toevoeging zit 'm in de beeldkwaliteit en functies. Je krijgt haarscherp zicht van top tot teen (Head-to-Toe Video), waardoor je niet alleen gezichten ziet, maar bijvoorbeeld ook pakketjes die voor je deur zijn neergezet. Met functies als 3D-bewegingsdetectie en zicht in kleur (ook 's nachts!) mis je bovendien niets meer. Of je nu op zolder zit of op kantoor bent: je hebt altijd de controle over je voordeur. En het mooie is: je krijgt nu 35 procent korting!

Bekijk de Ring Battery Video Doorbell Pro bij Amazon


Let op: de prijzen en beschikbaarheid bij Amazon kunnen snel veranderen. De genoemde kortingen waren actueel op het moment van publiceren.

▼ Volgende artikel
Opruimen en schoonmaken: zo is je huis écht klaar voor de feestdagen
© Ljupco Smokovski | www.ljsphotographyonline.com
Huis

Opruimen en schoonmaken: zo is je huis écht klaar voor de feestdagen

Het is bijna zover. De feestdagen staan voor de deur. Je kijkt er waarschijnlijk al naar uit: lekker eten, vrienden over de vloer, lekker op de bank een kerstklassieker kijken. Juist nu is het een goed moment om je huis weer even aan te pakken. Met een simpele planning en een paar gerichte schoonmaakklussen maak je je huis in één ochtend klaar voor kerst!

Je hal: opgeruimd = een warm welkom

De hal is de eerste plek die je gasten zien, maar in deze tijd van het jaar is het vaak een verzamelplaats van modderige schoenen, natte jassen en rondslingerende sjaals. Kijk eens kritisch naar je kapstok: hangen daar nog zomerjassen die naar zolder kunnen? Maak ruimte. Zo kunnen je gasten straks hun jas makkelijk kwijt.

Loop meteen even de rest van de hal na: laat alleen de schoenen staan die je dagelijks gebruikt en zet de rest in een kast of opbergbox. Verzamel losse sjaals, mutsen en handschoenen in een mand bij de deur. Even de vloer stofzuigen en dweilen en de spiegel en voordeur afnemen met een vochtige doek en je bent klaar. Een goede droogloopmat is in dit seizoen trouwens geen overbodige luxe; het vangt het meeste vuil op voordat het je woonkamer kan bereiken. Dit klusje kost je hooguit een kwartiertje, maar maakt écht verschil voor de sfeer in huis.

Je woonkamer: stof is echt niet feestelijk

In de woonkamer staat waarschijnlijk de verwarming lekker aan. De warme lucht zorgt voor luchtstroming, waardoor stof eerder gaat zweven en je het sneller overal terugziet. Voor je het weet ligt er een grijzig laagje op je plinten en vensterbanken. Niet zo feestelijk. Pak de stofzuiger en gebruik een klein opzetstuk, zoals de kierenzuigmond of meubelborstel. Daarmee kom je eindelijk goed tussen de lamellen van de radiator of achter die ene kast.

Heb je een robotstofzuiger? Laat die dan dagelijks zijn rondje rijden terwijl jij iets anders doet. Vergeet niet om af en toe de filters van je apparaten te controleren. Een vies filter blaast die muffe lucht namelijk net zo hard weer terug. Spoel ze uit en laat ze minstens 24 uur drogen. Een vochtig filter kan de motor beschadigen en dat wil je niet.

Lees ook: Van parketborstel tot turbobrush: zo gebruik je de zuigmonden van je stofzuiger

Vergeet je afstandsbediening niet!

De afstandsbediening is misschien wel het vieste voorwerp in huis. Maak hem schoon met een beetje alcohol of een desinfecterend doekje (ook tussen de knopjes!). Dan kun je weer heerlijk zappen en kerstklassiekers kijken deze dagen! 👇

Watch on YouTube

De keuken: korte metten met vet

In de keuken wordt de komende dagen waarschijnlijk flink gekookt. Vet en kookdampen slaan helaas overal neer. Kijk maar eens kritisch naar je afzuigkap; die vangt de meeste viezigheid op. Haal de roosters los en zet ze in een warm sopje met een flinke scheut ontvetter. Laat ze rustig een half uurtje weken. Heb je een recirculatiekap, vervang dan nu het koolstoffilter zodat geurtjes echt weg blijven.

Terwijl de roosters weken, heb je mooi tijd om de kastjes aan te pakken. Warm water en een beetje afwasmiddel werken vaak het best. Wees voorzichtig met een middel als baking soda. Dat kan krassen veroorzaken, met name op keukens met een hoogglans of juist heel matte, krasgevoelige afwerking. Het is daarom altijd slim om zo'n schoonmaakmiddel eerst te testen op een onopvallend plekje (bijvoorbeeld aan de binnenkant van een deurtje) voordat je het op het zichtbare deel gebruikt.

©ID.nl

Ho ho ho: denk ook aan je toilet!

Vergeet het kleinste kamertje niet! Juist als er gasten komen, wil je dat het toilet fris is. Een snelle poetsbeurt met chloor is vaak niet genoeg om hardnekkige kalkaanslag onder de rand of in de pot weg te krijgen. Gebruik hiervoor een krachtige ontkalker of schoonmaakazijn en laat dit gerust een nachtje intrekken voor het beste resultaat. Denk ook om de deurklink en het lichtknopje; die worden vaker aangeraakt dan je denkt. Door het toilet nu grondig schoon te maken, hoef je vlak voor het kerstdiner alleen nog maar even snel een doekje over de bril te halen.

Wil je dat het toilet niet alleen schoon is, maar ook naar kerst ruikt? Zet dan een klein vaasje neer met een paar verse dennentakjes en een takje hulst met rode bessen. Dit ziet er direct feestelijk uit en verspreidt een subtiele bosgeur. Of prik kruidnagels in een sinaasappel en hang die op. Ruikt niet alleen heel kerstig, maar neutraliseert ook nog eens ongewenste geurtjes.

Bankhoezen en gordijnen: vergeten geurvangers

Soms heb je alles gepoetst en geboend, maar ruikt het huis nog steeds niet helemaal fris. Daar is een simpele verklaring voor. Juist in het najaar houden we ramen vaker dicht, waardoor geurtjes in je gordijnen, plaids en kussenhoezen trekken. Alles wat in de wasmachine mag, draai je daarom het beste even op een kort programma. Wat niet of moeilijk in de machine kan (zoals gordijnen of de vaste bekleding van je bank) kun je een handstomer gebruiken. De hete stoom doodt bacteriën en verwijdert geurtjes.

©ID.nl

Schone lucht in huis

Je huis is pas echt schoon wanneer ook de lucht schoon is.  In het najaar is het binnen vaak vochtiger, omdat we de ramen vaker dicht laten maar wel net zo vaak douchen, wassen en koken. Zet daarom elke dag de ramen tien minuten tegen elkaar open. Die stroom frisse buitenlucht doet wonderen. Merk je dat het vochtig of muf blijft? Dan kan een luchtontvochtiger of luchtreiniger uitkomst bieden. Voor hardnekkige kookluchtjes kies je het beste een reiniger met een actief koolstoffilter. Zo voorkom je beslagen ramen en blijft het binnenklimaat gezond, ook als straks de hele familie over de vloer komt.

Lees ook: Waarom je luchtreiniger in de herfst meer doet dan je denkt