De if (drank != ("cola" or "fanta" or "icetea")) or(eten != "pasta" or "pizza" or "lasagne")
niet correct python. Je kan namelijk niet ("cola" or "fanta" or "icetea")
achter elkaar zetten aangezien deze strings nooit "waar" zijn, vandaar dat je altijd die "Dit staat niet in het systeem" melding kreeg.
Om dit op te lossen zou je de code eigenlijk moeten aanpassen naar het volgende om elke waarde los te checken:
if ((drank != "cola" and drank != "fanta" and drank != "icetea" ) or (eten != "pasta" and eten != "pizza" and eten != "lasagne"):
Maar omdat dit ingewikkeld is en vrijwel onmogelijk is om te onderhouden wanneer je veel meer producten hebt, is het verstandig om een "array" te gebruiken.
In dat geval wordt de if-statement if (drank not in drinkOpties) or (eten not in eetOpties):
waar de drinkOpties
staat voor de array-variabele. Door not in
te gebruiken kijkt Python of de waarde overeenkomt met een van de items in je array.
# Opties
drinkOpties = ["cola", "fanta", "icetea"];
eetOpties = ["pasta", "pizza", "lasagne"];
if antwoord == "ja":
if (drank not in drinkOpties) or (eten not in eetOpties):
print("Dit staat niet in het systeem bereken handmatig!")
else:
print("Dat wordt dan {} euro".format(prijs_eten + prijs_drank))
Laat me weten of het helpt 🙂