Instructions
4
3
Muste
r
1
War die Ein
g
abe eine
1
,
wird der hinter dieser Zeile ein
g
erückte Pro
g
rammteil aus
g
e
f
ührt.
if
e == "
1
"
:
Beachten Sie, dass Einrückungen in Python nicht nur der Optik dienen. Wie Schlei
f
en wer den
auch solche Ab
f
ragen mit einer Einrückung eingeleitet
.
G
l
eic
h
ist nic
h
t
gl
eic
h
gl
eic
h
Python verwendet zwei Arten von Gleichheitszeichen. Das ein
f
ache =
d
ient
d
azu, einer Varia
bl
en einen
b
estimmten Wert zuzuweisen. Das
d
oppe
l
te G
l
eic
hh
eitszeic
h
en
==
wird in Ab
f
ragen verwendet und prü
f
t,
o
b
zwei Werte wir
kl
ic
h
g
l
eic
h
sin
d
.
Falls der Benutzer also eine
1
über die Tastatur eingegeben hat, startet eine Schleife, die ein zyklisches Lauf
-
licht erzeugt. Diese Schleifen sind für alle verwendeten LED-Muster prinzipiell gleich aufgebaut
.
for i in range
(
w
)
: Die äußere Schleife wiederholt das Muster so oft, wie in der eingangs defi nierten Vari-
ablen
w
angegeben. In dieser Schleife liegt eine weitere, die das jeweilige Muster erzeugt. Diese unterscheidet
sich bei
j
edem Muster.
for j in range(z)
:
G
P
IO
.output(
LED
[j],
T
rue
)
time.s
l
eep(t
)
GPIO.output
(
LED
[
j
]
, False
)
Im Fall des einfachen z
y
klischen Laufl ichts läuft diese Schleife nacheinander für
j
ede LED der Liste einmal
durch. Wie viele LEDs das sind, wurde am Anfan
g
des Pro
g
ramms in der Variablen
z
g
espeichert. Die LED mit
der Nummer des aktuellen Stands des Schleifenzählers wird ein
g
eschaltet. Danach wartet das Pro
g
ramm die
ein
g
an
g
s in der Variablen
t
g
espeicherte Zeit und schaltet die LED danach wieder aus. Anschließend be
g
innt
der nächste Schleifendurchlauf mit der nächsten LED. Die äußere Schleife wiederholt die
g
esamte innere
Sc
hl
e
if
e
f
ü
nfm
a
l.
M
uste
r
2
H
at
de
r B
e
n
ut
z
e
r
e
in
e
2
ein
g
e
g
eben, startet eine ähnliche Schleife. Hier werden die LEDs aber nicht nur in
einer Richtun
g
durch
g
ezählt, sondern am Ende des Laufl ichts wieder in um
g
ekehrter Reihenfol
g
e. Das Licht
l
äu
f
t
ab
w
ec
h
se
ln
d
v
o
r
u
n
d
z
u
r
üc
k.
e
lif
e == "
2
"
:
Die weiteren Abfra
g
en nach der ersten verwenden die Abfra
g
e
elif
,
was bedeutet
,
dass sie
nur dann aus
g
eführt werden, wenn die vorher
g
ehende Abfra
g
e als Er
g
ebnis F
alse
zurück
g
ab.
for i in range(w)
:
for j in range(z)
:
G
P
IO
.output(
LED
[j],
T
rue
)
time.s
l
eep(t
)
G
P
IO
.output(
LED
[j], Fa
l
se
)
for j in range(z-1, -1, -1)
:
G
P
IO
.output(
LED
[j],
T
rue
)
time.s
l
eep(t
)
GPIO.out
p
ut
(
LED
[
j
]
, False
)
10145-5 Raspberry Pi verstehen und anwenden_01.indd 4310145-5 Raspberry Pi verstehen und anwenden_01.indd 43 30.06.2017 10:09:3330.06.2017 10:09:33