pythonzomerschool

Week 1 · Les 2 · Python-basis

Variabelen & datatypes

Waarom is "3" + "3" niet gewoon 6? Aan het einde van deze les weet je precies waarom — en snap je het verschil tussen een getal en tekst die eruitziet als een getal.

In deze cursus heeft elk datatype z'n eigen kleur:

str — tekst int — geheel getal float — kommagetal bool — waar/onwaar

§1Het doosje onthoudt ook wát erin zit

In les 1 stopte je een getal in het doosje snoepjes. Maar zo'n doosje onthoudt méér dan alleen de waarde: het onthoudt ook wat voor soort waarde het is. Kijk hieronder maar naar het labeltje onder het doosje.

Probeer vooral de knop met "12". Dat líjkt hetzelfde als 12 — maar kijk wat er daarna gebeurt als je er 3 bij wilt optellen…

Ontdek het verschil zelf

Klik op een regel code om hem uit te voeren. Wat is het verschil tussen 12 en "12"?

snoepjes nog leeg…

Zit er 12 in het doosje, dan gaat rekenen prima: 12 + 3 = 15. Maar zit er "12" in, dan krijg je een TypeError. Voor Python is "12" namelijk géén getal maar tekst die eruitziet als een getal. Waarom dat zo is — en hoe je het oplost — daar gaat deze les over.

§2Niet alles in een doosje is hetzelfde: datatypes

Kijk eens goed naar deze twee regels. Ze lijken bijna identiek — maar voor Python zijn ze totaal verschillend:

getal = 3

Zonder aanhalingstekens is 3 een int: een echt getal. Je kunt ermee rekenen.

getal = 3 print(getal + getal)
6

getal = "3"

Mét aanhalingstekens is "3" een str: tekst. Plussen betekent dan plakken.

getal = "3" print(getal + getal)
33

Onthoud de vuistregel: aanhalingstekens = tekst. Ook als er toevallig cijfers tussen staan. Voor Python is "3" net zo goed tekst als "hoi" — je kunt er niet mee rekenen, alleen mee plakken.

🔮 Voorspel de uitvoer

Wat denk je dat dit programma print? Bedenk eerst zelf een antwoord.

print("1" + "1") print(1 + 1)
11 2

De eerste regel plakt twee stukjes str aan elkaar: "11". De tweede telt twee int-waardes op: 2. Zelfde plusje, ander type, ander resultaat!

Dit zijn de vier types die je deze week tegenkomt:

TypeWat is het?Voorbeelden
strtekst (string), altijd tussen aanhalingstekens"hoi", "3", ""
intgeheel getal3, -42, 0
floatkommagetal (met een punt, niet een komma!)7.5, 3.0
boolwaar of onwaar — komt terug in les 3True, False

§3Twijfel je? Vraag het aan Python

Met type() vertelt Python je precies wat er in een doosje zit:

print(type(3)) print(type("3"))
<class 'int'> <class 'str'>

En je kunt types omzetten. Met int("3") maak je van de tekst "3" het getal 3, en met str(3) precies andersom. Dat heb je straks hard nodig: alles wat een gebruiker intypt via input() komt binnen als str — óók als het een getal is.

🔮 Voorspel de uitvoer

leeftijd = "16" print(int(leeftijd) + 1)
17

int(leeftijd) maakt van "16" eerst het getal 16. Daarna kan Python er gewoon 1 bij optellen. Zonder die omzetting zou je een foutmelding krijgen: tekst + getal kan niet.

🧠 Test jezelf

Vijf korte vragen. Je krijgt meteen te zien of je het goed hebt — fout is niet erg, daar leer je van!