Instructions

1
6
A
bb
. 1.1
0:
Zahlenraten in Python
.
1.4.2 So
f
unktioniert e
s
Dass das Spiel funktioniert, lässt sich einfach ausprobieren. Es stellen sich natürlich einige Fragen: Was pas-
siert im Hintergrund? Und was bedeuten die einzelnen Programmzeilen
?
i
mport ran
d
om Um die zufälli
g
e Zahl zu
g
enerieren, wird ein externes P
y
thon-Modul namens
ra
n
dom
im
p
or-
tiert, das diverse Funktionen für Zufalls
g
eneratoren enthält
.
zahl = random.randran
g
e
(
1000
)
Di
e
F
u
nk
t
i
o
n
r
an
d
ran
g
e
aus
de
m M
odu
l
ra
n
dom
g
eneriert eine Zufalls
-
zahl in dem durch die Parameter be
g
renzten Zahlenbereich, hier zwischen 0 und 999. Der Parameter der
F
u
nk
t
i
o
n
r
andom.randran
g
e
()
g
ibt die Anzahl mö
g
licher Zufallszahlen an, mit 0 be
g
innend also immer die
erste Zahl, die nicht erreicht wird. Das Gleiche
g
ilt für Schleifen und ähnliche Funktionen in P
y
thon
.
Di
ese
Z
u
f
a
ll
s
z
a
hl wir
d
in
de
r V
a
ri
ab
l
e
n z
ahl
g
espeichert. Variablen sind in P
y
thon Speicherplätze, die einen
beliebi
g
en Namen haben und Zahlen, Zeichenfol
g
en, Listen oder andere Datenarten speichern können. Anders
als in eini
g
en anderen Pro
g
rammiersprachen müssen sie nicht vorher deklariert werden
.
Wie entstehen Zufallszahlen?
Gemeinhin denkt man, in einem Programm könne nichts zufällig geschehen. Wie also kann ein Pro gramm
dann in der Lage sein, zu
f
ällige Zahlen zu generieren? Teilt man eine gro
ß
e Primzahl durch irgendeinen
Wert, ergeben sich ab der x-ten Nachkommastelle Zahlen, die kaum noch vorhersehbar sind und sich ohne
jede Regelmäßigkeit ändern, wenn man den Divisor regelmäßig erhöht. Dieses Ergebnis ist zwar schein
-
bar zufällig, lässt sich aber durch ein identisches Programm oder den mehrfachen Aufruf des gleichen
Programms jederzeit reproduzieren. Nimmt man aber eine aus einigen dieser Ziffern zusammengebaute
Zahl und teilt sie wiederum durch eine Zahl, die sich aus der aktuellen Uhr zeitsekunde oder dem Inhalt
einer beliebigen Speicherstelle des Rechners ergibt, kommt ein Ergebnis heraus, das sich nicht reproduzie
-
r
e
n l
ässt
u
n
d
da
h
e
r
a
l
s
Z
u
f
a
ll
s
z
a
hl
be
z
e
i
c
hn
et
wir
d.
ti
pp =
0
Di
e
V
a
ri
able
t
i
p
p
enthält später die Zahl, die der Benutzer eintippt. Am An
f
ang ist sie
0
.
10145-5 Raspberry Pi verstehen und anwenden_01.indd 1610145-5 Raspberry Pi verstehen und anwenden_01.indd 16 30.06.2017 10:09:2730.06.2017 10:09:27