Les 3
In de vorige les heb je geleerd wat strings zijn: stukjes tekst die Python bijvoorbeeld op het scherm kan schrijven (met print
.) Je wist natuurlijk al wat getallen zijn: 1, 2 en 2939275, om er maar een paar te noemen. Nu gaan we hier even verder mee spelen.
Types
Het is heel belangrijk om strings en getallen uit elkaar te houden. Het zijn namelijk verschillende types, zo heet dat bij programmeren. En verschillende types gedragen zich verschillend.
Start cmd
maar weer eens op. Weet je het nog? De start-knop linksonder en dan ‘cmd’ typen. En type dan python
in het zwarte scherm. Nu zie je weer de drie pijltje, >>>. Dan gaan we eens lekker met types rommelen.
Wat krijg je als je dit typt?
print 1 + 1
2
natuurlijk. Probeer maar effe, om te kijken of het nog werkt.
Nu een leukere vraag: wat krijg je als je dit typt:
print '1' + '1'
Eerst nadenken. Dan uitproberen.
Inderdaad, '11'
. Wist je dat, dat één plus één eigenlijk elf is? Begrijp je waarom het zo is?
'1'
is niet een getal, maar het is een string. Met strings kun je niet rekenen, want een string is een stukje tekst. Maar in Python kun je stukjes tekst wel bij elkaar optellen: hij plakt ze dan aan elkaar. Probeer nog maar eens een paar strings:
print '1' + '100' print 'aap' + 'noot' print 'aap' + 'je'
Best handig, toch?
Probeer dit eens:
print '1' + 1
Fout. Je kan niet tekstplakken en rekenen tegelijk. De computer wist niet wat hij moest doen: moest hij nou tekst aan elkaar plakken of getallen bij elkaar optellen? Dus zei hij maar TypeError
. Een fout met de types, dus.
Nog eentje dan, die is leuk:
print '1' * 5
Wat denk je, weer een fout met types?
Nee hoor. Python weet nu wel wat je bedoelt. Je wilt gewoon vijf keer een ‘1’ aan elkaar plakken. Je kan dus geen getallen bij een string optellen, maar je kunt strings wel vermenigvuldigen! Probeer maar eens wat wilde dingen:
print '1' * 500 print 'aapje ' * 10 print 10 * 'olifant'
Supermakkelijk als je strafregels moet schrijven.
Schrijf honderd keer: ‘Ik mag niet keten in de klas.’
Probeer het maar.
Wat heb je geleerd?
- Een string is geen getal.
- Een getal is geen string.
- Verschillende types doen dingen anders, zoals optellen.
- Soms kun je types combineren (‘1’ * 5), en soms niet (‘1’ + 1) .
Dit was een hele makkelijke, korte les. Dat komt omdat de volgende les heel moeilijk wordt. Tot dan!
Dion
tralala
Dit is echt heel cool.
ik snap het niet goed
dion bij werken die strings niet op cmd
ik zou er een spatie achter zetten anders hebben ze je door… 😉
Ik vond het heel erg leuk om te doen,en ik heb er veel over geleerd.
ik vind het echt super goed van u dat u deze website voor jongeren heeft gemaakt ik ben er heel erg door opgestoken en het is overzichttelijk en je kan beginnen waar je wil en het is GRATIS!!!
BEDANKT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Geweldig dit we zijn je denk ik allemaal heel dankbaar 🙂
geweldig zo leer je stap voor stap programeren
ps. het is ook leuk