Stap 2: Drie standen (elif)
Deze stap gebruikt elif, uit And, or en elif.
Een verkeerslicht heeft drie standen: rood, oranje en groen. Met elif stel
je na de eerste vraag een tweede, en else vangt de rest op:
import turtle
stand = "oranje"
if stand == "rood":
kleur = "red"
elif stand == "oranje":
kleur = "orange"
else:
kleur = "green"
turtle.dot(40, kleur)
Python loopt de vragen van boven naar beneden af, en doet alleen het blok
van de eerste die klopt. Hier is dat elif, dus de stip wordt oranje.
Opdracht: precies één lamp aan
Teken het hele verkeerslicht. Alle drie de lampen zijn grijs, behalve die
van de stand. Zet stand op "oranje".
import turtle stand = "oranje" turtle.hideturtle() turtle.penup() turtle.goto(0, 50) turtle.pendown() turtle.pensize(70) turtle.goto(0, 150) turtle.penup() boven = "gray" midden = "gray" onder = "gray" turtle.goto(0, 150) turtle.dot(40, boven) turtle.goto(0, 100) turtle.dot(40, midden) turtle.goto(0, 50) turtle.dot(40, onder)
Klik hier voor een tip.
Alle lampen beginnen grijs. Zet vóór het tekenen een if, elif en else
die één van de drie variabelen een andere kleur geeft, bijvoorbeeld
midden = "orange".
Klik hier voor de oplossing.
import turtle
stand = "oranje"
turtle.hideturtle()
turtle.penup()
turtle.goto(0, 50)
turtle.pendown()
turtle.pensize(70)
turtle.goto(0, 150)
turtle.penup()
boven = "gray"
midden = "gray"
onder = "gray"
if stand == "rood":
boven = "red"
elif stand == "oranje":
midden = "orange"
else:
onder = "green"
turtle.goto(0, 150)
turtle.dot(40, boven)
turtle.goto(0, 100)
turtle.dot(40, midden)
turtle.goto(0, 50)
turtle.dot(40, onder)
Probeer ook "rood" en "groen". Met "paars" gaat de groene lamp aan,
want else vangt alles op wat geen rood of oranje is.
Maak het je eigen
Op straat staan meer lichten dan dit ene.
- Bedenk een stand
"storing"waarin alleen de oranje lamp brandt, en een stand"uit"waarin alles grijs blijft. - Teken een voetgangerslicht met twee lampen, en laat een variabele
lopenmet"ja"of"nee"bepalen welke brandt. - Zet het licht op een grijze paal: een dikke lijn onder de kast.
- Bij een spoorwegovergang branden twee rode lampen naast elkaar. Teken ze
met één
ifdie ze allebei tegelijk aan of uit zet.
Door naar het volgende project: Veelhoeken en sterren.