Herhaling

Datatype Nederlands Beschrijving
Integer Geheel Getal Een geheel getal zonder decimalen, kan positief of negatief zijn. Voorbeeld: -5, 0, 42.
Float Kommagetal Een getal met decimalen, gebruikt voor waarden die een breuk kunnen zijn. Voorbeeld: 3.14, -0.001.
String Tekst Een reeks karakters, gebruikt om tekstuele informatie op te slaan. Voorbeeld: “Hallo”, ‘Python’.
Boolean NA Een logisch resultaat dat slechts twee waarden kan aannemen: True of False

Tuples

Een tuple is een groep van één of meer waardes die als een geheel behandeld worden. Dit hoofdstuk legt uit hoe je tuples kunt herkennen en gebruiken.

Gebruik van tuples

Een tuple bestaat uit een aantal waardes die van elkaar gescheiden zijn met komma’s. Meestal worden tuples geschreven met haakjes eromheen, maar de haakjes zijn niet noodzakelijk (behalve in omstandigheden waar anders verwarring zou ontstaan).

Maak je eerste tuples:

t = ("mango", "banaan")
print(t)
print(type(t))
t = ("appel", 3, 3.14, False, None)  # een nieuwe tuple en de variabele t overschrijven
print(t)
print(type(t))

Je kunt in een tuple verschillende data types mixen.

t1 = ("appel", 3, 1.4)
t2 = ("appel", 3, 1.4, ("banaan", 5))

Meer info omtrent tuples creëeren zie hoofdstuk 11.1.1 Tuple assignments in het boek.

max, min en sum functies

Je kunt de max() en min() functies gebruiken om het maximum respectievelijk het minimum te bepalen van een tuple die bestaat uit getallen. Je kunt de elementen van een tuple met numerieke elementen bij elkaar optellen middels de sum() functies.

t1 = (327 , 419, 101, 667, 925, 225)
print( max( t1 ) )
print( min( t1 ) )
print( sum( t1 ) )

in operator

Je kunt testen of een element onderdeel van een tuple is met behulp van de in operator.

t1 = ("appel", "banaan", "kers")
print( "banaan" in t1 )
print( "mango" in t1 )

Merk op dat je op deze manier conditionele statements met veel or operators vaak kunt vereenvoudigen. Herinner de oefeningen Witte ruit waarin wij moesten kijken of een type voertuig een taxi, hybride of elektrisch was. Dit kan nu eenvoudiger.

n = int(input())
auto = input()
if n >= 2 or auto in ("taxi", "elektrisch", "hybride"):  # Merk hier op dat dit eenvoudiger/korter is dan vroeger
    print("Je mag rijden op de strook met een witte ruit")
else:
    print("Verander van rijstrook")

len functie

Je kunt de len() functie gebruiken om te bepalen hoeveel elementen een tuple heeft.

t = ("mango", "banaan")
print(t)
print(len(t))
t = ("appel", 3, 3.14, False, None)  # een nieuwe tuple en de variabele t overschrijven
print(t)
print(len(t))
t = ("appel", 3, 3.14, False, None, ("mango", "banaan"))
print(t)
print(len(t))

Merk op dat je tuples in elkaar kunt nesten. En dat een geneste tuple maar één element is. De lengte van de laatste tuple is dus maar één groter dan de vorige. Je kan wel stellen dat dit element zelf een lengte heeft van 2.

itereren door een tuple

Onderzoek zelf.

t = ("appel", 3, 3.14, False, None, ("mango", "banaan"))
for el in t:
    print(el)

Tuple indices

Net als bij strings, kun je individuele elementen van een tuple benaderen via indices. Waarbij strings de individuele elementen tekens zijn, zijn het bij tuples waardes. Bijvoorbeeld:

t1 = ("appel", "banaan", "kers", "doerian")
print( t1[2] )
t1 = ("appel", "banaan", "kers", "doerian", "mango")
print( t1[1:4] )

Kleine oefening

Schrijf een for loop die alle elementen van een tuple toont, en die ook hun indices toont.

Tuple vergelijkingen

Onderzoek zelf:

t1 = ( "appel", "banaan" )
t2 = ( "appel", "banaan" )
t3 = ( "appel", "kers" )
t4 = ( "appel", "banaan", "kers" )
print( t1 == t2 )
print( t1 < t3 )
print( t1 > t4 )
print( t3 > t4 )

Je kunt twee tuples met elkaar vergelijken met behulp van de reguliere vergelijkingsoperatoren. Deze operatoren vergelijken eerst de eerste elementen van beide tuples. Als ze verschillend zijn, dan geeft de vergelijking van die twee elementen op basis van de regels die voor hun data types geldt, de gevraagde uitkomst. Als ze gelijk zijn, dan worden de volgende elementen van beide tuples met elkaar vergeleken, etcetera …

Meer informatie in hoofdstuk 11.1.3 Tuple vergelijkingen in het boek.

Tuples zijn onveranderbaar/immutable

Net als strings, zijn tuples onveranderbaar. Dat wil zeggen dat je geen nieuwe waarde kunt toekennen aan een element van een tuple. Het voorbeeld hieronder veroorzaakt een runtime error als je het uitvoert.

t1 = ("appel", "banaan", "kers", "doerian")
t1[0] = "mango" # Runtime error

Alle informatie vind je terug in hoofdstuk 11 Tuples in het boek.

Overzicht datatypes

Datatype Nederlands Beschrijving
Integer Geheel Getal Een geheel getal zonder decimalen, kan positief of negatief zijn. Voorbeeld: -5, 0, 42.
Float Kommagetal Een getal met decimalen, gebruikt voor waarden die een breuk kunnen zijn. Voorbeeld: 3.14, -0.001.
String Tekst Een reeks karakters, gebruikt om tekstuele informatie op te slaan. Voorbeeld: “Hallo”, ‘Python’.
Boolean NA Een logisch resultaat dat slechts twee waarden kan aannemen: True of False
Tuple NA Een onveranderlijke geordende reeks. Voorbeeld: (“banaan”, 2, 7)