Python basis
Condities
Op basis van condities kun je beslissen wat je programma moet doen in een bepaalde situatie. Stel je wil weten of een bepaalde waarde voorkomt in een list. Dan kan je dat zo doen....
autos = ['audi', 'bmw', 'subaru', 'toyota']
for auto in autos:
if auto == "bmw":
print("yep, er zit een bmw bij!")
In bovenstaande code zie je het if-statement weer zijn eigen code-block heeft. Je ziet het if-commando - een conditie die wel of niet waar kan zijn - en een :
Daarna zie je de ingesprongen tekst <codeprint("yep, er zit een bmw bij!"). Dit stukje code wordt alleen uitgevoerd als de conditie auto == "bmw"
waar is (True).
De dubbele ==
-tekens staan voor: 'gelijk aan'.
# x krijgt de waarde 10 toegewezen
x = 10
# x wordt vergeleken met 10
x == 10
# Als x gelijk is aan 10 dan is x == 10 gelijk aan True
print(x == 10)
# output
True
Vergelijken is dus iets anders dan toekennen waarbij je een waarde in een variabele stopt. Op w3schools vind je een heel overzicht van vergelijkings-operatoren. Dit is er ook een van:
x = 9
print(x != 10)
# output
True
AND en OF
Je kunt meerdere vergelijkingen maken in 1 regel...
Met and
moeten beide vergelijkingen True
zijn
x = 9
print(x != 10 and x == 10)
# output
False
Met or
moet een van de vergelijkingen True
zijn
print(x != 10 or x == 10)
#output
True
Controleren of een element voorkomt in een list..
lst = ['audi', 'bmw', 'subaru', 'toyota']
if 'audi' in lst:
print('audi is in the list')
of juist niet...
lst = ['audi', 'bmw', 'subaru', 'toyota']
if 'mercedes' not in lst:
print('mercedes is niet in list')
if-else statements
Je kunt ook de uitkomst van een conditie koppelen aan code die wordt uitgevoerd als de uitkomst True
is en weer ander code als de uitkomst juist False
is....
lst = ['audi', 'bmw', 'subaru', 'toyota']
if 'mercedes' in lst:
print('Mercedes is wel in de list')
else:
print('Mercedes is niet in de list')
En nog veelzijdiger wordt het als je ook nog verschillende condities kunt testen....
clubs = ['PEC Zwolle', 'Ajax', 'Feijenoord', 'AZ', 'FC Knudde']
for club in clubs:
if club[0] == 'A':
print(f"{club} begint met de letter A")
elif club[0] == 'F':
print(f"{club} begint met de letter F")
else:
print(f"De eerste letter van {club} begint niet met een A of F")
Zoals je ziet kun je met de rechte haken ook in een string refereren naar de plek waar een karakter zich bevindt. Je kunt ook teksten slicen met [:]
!