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
Actieve versus passieve speakers: welke luidsprekers passen bij jou?
© jipen
Huis

Actieve versus passieve speakers: welke luidsprekers passen bij jou?

Twijfel je tussen actieve en passieve luidsprekers? Het verschil zit in de versterker. In dit artikel leggen we uit wat de voor- en nadelen zijn, zodat je precies weet welk systeem het beste klinkt in jouw woonkamer. Geen gedoe, gewoon helder advies.

Als je op zoek bent naar beter geluid, vliegen de termen je om de oren. Het onderscheid tussen actief en passief is misschien wel de belangrijkste technische keuze die je moet maken, maar wordt vaak onnodig ingewikkeld gemaakt. Veel mensen denken dat het puur om geluidskwaliteit gaat, terwijl het vooral draait om gebruiksgemak en apparatuur. Na het lezen van dit stuk weet je precies of je voor alles-in-één gemak moet gaan of voor de vrijheid van losse componenten.

De kern: waar zit de krachtbron?

Het technische verschil is eigenlijk heel simpel: het draait allemaal om de locatie van de versterker. Een luidspreker kan namelijk geen geluid maken zonder stroom en aansturing.

Bij een actieve speaker is de versterker ingebouwd in de behuizing van de luidspreker zelf. Je herkent dat direct aan de achterkant: er zit een stroomkabel aan die het stopcontact in moet, en vaak knoppen voor volume of toonregeling. Je sluit je telefoon, pc of platenspeler direct aan op de speaker.

Bij een passieve speaker zit er géén elektronica in de kast die het geluid versterkt. De speaker heeft geen stekker voor het stopcontact, maar alleen aansluitingen voor luidsprekerdraad. Je hebt altijd een losse versterker of receiver nodig die het signaal krachtig genoeg maakt voordat het naar de speaker gaat. Een veelvoorkomend misverstand is dat 'passief' betekent dat ze slechter of zwakker zijn. Integendeel, de allerduurste hifi-systemen zijn bijna altijd passief.

©jipen

Wanneer is actief de slimste keuze?

Kies voor actief als je houdt van een opgeruimd huis en gebruiksgemak (dit soort speakers zijn meestal plug & play). Omdat de fabrikant de ingebouwde versterker helemaal heeft afgestemd op de luidspreker, ben je verzekerd van een goede match zonder dat je technisch inzicht nodig hebt. Dit is bij uitstek geschikt voor minimalisten die geen losse apparaten of een wirwar aan kabels in de woonkamer willen. Een soundbar is hier het bekendste voorbeeld van; dat is bijna altijd een actieve speaker. Ook voor een werkplek of gaming-setup op een bureau is dit de standaard, omdat je ze direct in je pc plugt zonder tussenkomst van een extra apparaat. Daarnaast zie je deze techniek terug in slimme multiroom-systemen met wifi of bluetooth (zoals die van Sonos), waarmee je direct vanaf je telefoon muziek streamt.

De beperking van alles-in-één

Het grote nadeel van actieve speakers is dat je vastzit aan het totaalpakket. Gaat de versterker in de speaker kapot? Dan doet je hele luidspreker het niet meer, ook al zijn de speaker-units zelf nog prima.

Daarnaast ben je minder flexibel in de toekomst. Bij passieve systemen kun je over vijf jaar besluiten om alleen een nieuwe versterker met de nieuwste streamingfuncties te kopen, terwijl je je geliefde speakers behoudt. Bij een actief systeem moet je bij veroudering van de software of aansluitingen vaak meteen de hele set vervangen. Daarnaast is het uitbreiden van een stereoset naar een volledige thuisbioscoop met actieve speakers vaak lastiger of beperkt tot één specifiek merk.

©Aboltin

Wanneer moet je absoluut niet voor actief kiezen?

Er zijn specifieke situaties waarin je een actief systeem beter links kunt laten liggen. Als je bijvoorbeeld al een prima werkende versterker of receiver hebt staan, is het zonde van je geld om actieve speakers te kopen. Je betaalt dan immers dubbel voor versterking die je niet gebruikt.

Ook als je speakers wilt wegwerken in het plafond of de muur is passief de enige logische route. Je wilt namelijk geen stroompunten bij elke inbouwspeaker aanleggen, en je kunt sowieso niet makkelijk bij de elektronica als er eenmaal iets stuk gaat.

Tot slot kun je in grote ruimtes, zoals een hal of showroom, beter met passief draad werken. Luidsprekerkabels zijn over lange afstanden veel makkelijker te trekken en te verlengen dan de combinatie van stroom- en signaalkabels bij actieve speakers.

Check je kabels en je kastruimte

Om de knoop door te hakken, kijk je eerst goed naar je eigen situatie. Heb je in je tv-meubel ruimte voor een los apparaat van ongeveer 44 cm breed (de standaardmaat voor receivers)? En vind je het leuk om zelf je set samen te stellen? Dan is passief jouw route naar topgeluid op maat.

Heb je daarentegen geen zin in gedoe, wil je met één afstandsbediening klaar zijn en heb je een hekel aan zichtbare apparatuur? Dan is een actief systeem of een actieve set boekenplank-speakers de moderne oplossing die je zoekt.

Kortom: eenvoud versus controle

Het verschil tussen actief en passief is een keuze tussen gemak en flexibiliteit. Actieve speakers bieden een alles-in-één oplossing: stekker erin en spelen, ideaal voor wie weinig ruimte of geduld heeft. Passieve speakers vereisen een losse versterker, maar geven je de vrijheid om je systeem oneindig aan te passen, te repareren en te upgraden. Kijk dus niet alleen naar het geluid, maar vooral naar hoeveel apparaten je in huis wilt halen.

▼ Volgende artikel
Eerste Samsung Galaxy S26-teaservideo's verschenen
© Samsung
Huis

Eerste Samsung Galaxy S26-teaservideo's verschenen

Samsung heeft drie korte video's gedeeld waarmee het hint naar de komst van de Samsung Galaxy S26-smartphones.

Het is al een tijdje bekend dat het bedrijf later deze maand de nieuwe smartphonelijn uit de doeken gaat doen, die waarschijnlijk onder de noemer 'S26' gaat vallen. Nu zijn er drie teaservideo's gedeeld om mensen alvast lekker te maken.

View post on Instagram
 

De teaservideo's

De video's heten Closer, Groove en Glow, en richten zich zo lijkt het op verbeteringen die de Galaxy S26-smartphones gaan brengen. In 'Closer' is te zien hoe de camera van een flinke afstand inzoomt op een hond, zonder dat er veel kwaliteit verloren gaat.

In de 'Groove'-video is een dj-set te zien waarbij de camera duidelijk de dj in beeld brengt, inclusief alle bewegingen en lichtveranderingen. In de laatste video, 'Glow', wordt benadrukt hoe de camera's van de S26 zelfs donkere scènes helder kunnen filmen.

Watch on YouTube

De video's lijken dus vooral te hinten naar de verbeteringen in de camera's van de S26-lijn, al moet nog maar blijken of de filmpjes een realistische representatie zijn van wat er straks allemaal mogelijk is.

In alle drie de video's wordt overigens ook melding gemaakt van AI. Zoals eerdere geruchten al aangaven, gaat AI waarschijnlijk een prominente rol spelen bij de nieuwe smartphones van Samsung.

Watch on YouTube

Wanneer wordt de Samsung S26 onthuld?

Het is zo goed als zeker dat de nieuwe Samsung S26-smartphones op 25 februari worden onthuld. Uit een gelekte uitnodiging voor het aankomende Galaxy Unpacked-evenement blijkt namelijk dat die show op 25 februari wordt gehouden, en dat lijkt de ideale plek om de nieuwe smartphones van het bedrijf te onthullen.

Watch on YouTube

Over de Samsung Galaxy S26-toestellen

Samsung brengt dit jaar naar verwachting de Galaxy S26, S26+ en S26 Ultra. Eind vorig jaar lekten er al foto's van dummyversies van de smartphones op social media, waaruit blijkt dat deze modellen waarschijnlijk een ovaalvormig camera-eiland krijgen, vergelijkbaar met de Galaxy Z Fold-smartphones.

Qua kleuren zouden de nieuwe Galaxy-modellen in Black Shadow, White Shadow, Galactic Blue en Ultraviolet beschikbaar komen. Een grote focus zou ook liggen op de toevoeging van een privacyscherm - een optie zodat het moeilijker wordt voor omstanders om je het scherm van je smartphone te kijken.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.