Weet je nog waar les 2 over ging? Ja, strings of stukjes tekst.
Met het print commando hebben we geleerd hoe we zowel tekst als getallen kunnen schrijven.
We gaan hier nog een beetje verder mee experimenten zodat je dit volledig begrijpt.
Programmeren is zoals een boek. Iedereeen zal zijn boek op zijn eigen manier schrijven.
Dat is ook zo bij het programmeren. Na verloop van tijd zul je ook op een bepaalde manier programma's schrijven.
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.
In deze les zullen we Python eens op een andere manier opstarten.
Klik op de start knop en zoek naar Python 3.3. En klik nu op "IDLE (Python GUI"
De GUI (Graphical User Interface = grafische gebruikers scherm ziet er nu anders uit.
Maar terug zien we daar die ">>>" tekentjes. Dus we kunnen er aan beginnen.
Misschien vind je deze GUI wel leuker om in te werken?
Typ eens het volgende in:
>>> print (1 + 1 )
2
Ja, jullie wisten ook wel dat daar "2" zou tevoorschijn komen.
Eerst eens nadenken en dan proberen. Wat gebeurd er als je dit zou uitvoeren:
print( '1' + '1')
Eens zien:
>>> print ('1' + '1')
11
Had je dit verwacht? Wat is hier aan de hand?
'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)
Oei, dat lukt niet!
Tekst en cijfers met elkaar optellen gaat niet.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 weet een foutje? 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.
Wat hebben we deze keer 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) .
Vergeet niet om veel te oefenen. Nog even herhalen en dan op naar de volgende les.