At My Fingertips
Python ist eine Programiersprache. Programmiersprachen sind eigenständig lauffähige Einheiten, Befehle können also ohne weiter Importe ausgeführt werden, alle wichtigen Befehle sind bereits vorhanden:
zahl = 27
if zahl < 20:
print("zu klein")
else:
print("gross genug")
Für die Programmiersprache Python wurden sehr viele Bibliotheken erstellt. Eine Bibliothek, z. B. pytamaro
, baut auf einer Programmiersprache auf und bietet zusätzliche Funktionen (rectangle
, show_graphic
) oder Konstanten (black
, transparent
). Für die Programmiersprache Python gibt es sehr viele öffentliche Bibliotheken wie math
, turtle
und numpy
. Man kann auch private Bibliotheken erstellen und nutzen (wie zum Beispiel die toolbox
auf dieser Webseite).
Um Konstanten (black
) und Funktionen (rectangle
) aus Bibliotheken zu nutzen, importiert man sie zuerst mit from someLibrary import some_function, some_constant
.
from pytamaro import show_graphic, rectangle, black
breite = 27
show_graphic(rectangle(breite, breite, black))
Folgendes Programm wird einen Fehler auswerfen, da Python die Befehle und Konstanten nicht kennt.
show_graphic(triangle(200, 400, 50, black))
Erst nach dem Import kennt Python diese Befehle und Konstanten:
from pytamaro import show_graphic, triangle, black
show_graphic(triangle(200, 400, 50, black))
Im Folgenden schauen wir uns eine Bibliothek von Python genauer an:
random
-BibliothekDie Random-Bibliothek von Python generiert pseudo-zufällige Zahlen. Aus dieser Bibliothek lernen Sie hier folgende Funktionen kennen:
randint(start, stop)
gibt eine irgendeine Ganzzahl (int
) z zurück, für die gilt: start <= z <= stop
.Der Unterstrich _
in der for-Schleife wird übrigens als Variablenname verwendet, wenn diese Schleifenvariable nicht selbst verwendet wird, sie ist nur ein Platzhalter in der for-Schleife.
random()
gibt eine Gleitkommazahl float
z zurück, für die gilt: 0.0 <= z < 1.0
. randrange(start, stop, step)
wählt eine Integer von range(start, stop, step)
aus und gibt diese zurück.randint(a, b) == randrange(a, b+1)
Obwohl sich der Code nicht ändert, werden nach jedem Ausführen des Programms andere Werte ausgegeben. Dabei ist die Float, die von random()
ausgegeben wird, jedesmal eine andere Zahl, da ein Computer sehr viele Kommazahlen zwischen 0.0 und 1.0 darstellen kann. randrange(start, stop, step)
dagegen wählt nur zwischen start + step * i < stop
.
Weil es sich bei random
um eine Bibliothek mit pseudo-zufälligen Zahlen handelt, ist die Zufälligkeitsreihenfolge aber wiederholbar und meist mit der in anderen Zellen oder auf anderen Geräten identisch.
0.03577240139897597, 0.019890852275249005, 0.6593401497301199, 0.10902821036573895, 0.2255892895788344, 0.8879708079967095
1.265576819795029, 1.7826829178985975, 1.7548781992778282, 1.0792465423170419,
43.60022228533834, 28.609874606337783, 85.40297838738724, 96.68627346397263, 32.402000969847435, 77.10247641317777, 85.8952407044595,
for s in range(6):
print(random(), end = ", ")
for k in range(4):
print(random() + 1, end = ", ")
for p in range(7):
print(random() * 100, end = ", ")
4, 86, 36, 64, 88, 30, 94, 20, 92, 90, 48, 100, 42, 32, 18
, in zufälliger Reihenfolge.123_
aus, z. B. 123_123_123_123_123_123_
497, 280, -210, -112, 987, -350, -567, 105, -98, 973, 637, -140, 700, -42, 616, 168, -21, -119, 322, 798, 854, -868, 686, 252, -966, 462, -98
for m in range(15):
print(randrange(0, 101, 2), end = ", ")
print(randrange(1, 14) * "123_", end = "")
# or
for n in range(randrange(1, 14)):
print("123", end = ", ")
for y in range(randrange(101)):
print(randrange(-994, 1001, 7), end = ", ")
Color
sUm folgende Grafik herzustellen, kann man mit randrange
bei jedem Schleifendurchlauf den Rotwert zufällig bestimmen.
rotwert = randrange(256)
helligkeit = random()
Achtung: Für diese Aufgaben ist Wissen zu Funktionen notwendig.
# Ersetzen Sie den letzten Befehl im *Schleifenkörper*
# mit folgendem Zweizeiler:
rotation = randrange(60)
reihe = beside(reihe, rotate(rotation, stern))
# Ersetzen Sie den *Aufruf* zudem mit folgendem Dreizeiler:
zfr = zufaellige_sterne(500, 4)
zfr_1 = zufaellige_sterne(500, 4)
show_graphic(above(zfr, zfr_1))
Gehen Sie zur Aktivität Sternenhimmel um zu sehen, wie das geht.
Mit Zufallszahlen kann man viele Grafiken natürlicher oder spannender aussehen lassen. So können Sie z. B.
Fügen Sie ausgewählte Funktionen der Toolbox hinzu, falls Sie die Toolbox schon kennen.
random()
, randint(start, stop)
und randrange(start, stop, step)
aus der Python-Bibliothek random verwenden, um Zahlen und Grafiken mit Zufallselementen auszugeben.This activity has been created by Gall and is licensed under CC BY-SA 4.0.
Zufall nutzen
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version c3a8286 (Mon, 14 Oct 2024 13:30:28 GMT)