Tagebuch-Eintrag #18
Lottozahlen und Würfel mit random
In meinem Tagebuch-Eintrag #17 vom 15. Dezember 2019, hatte ich erwähnt, dass ich einen Lottozahlen-Generator erstellen wollte.
Dies habe ich nun getan, natürlich mit Hilfe eines Tutorials. So ganz allein habe ich es doch nicht geschafft. Aber ich versuche den Python-Code zu verstehen und die Funktionsweise zu merken. Dafür sind nun Übungen da. 😉
Als erstes wird die random-Funktion in Python importiert.
import random
Danach wird eine Variable mit leere Liste erstellt. Und mit der .extend-Funktion die Zahlen 1 bis 49 hinzugefügt. Danach wird diese Variable einer neuen Variable zugewiesen, welches 6 beliebige Zahlen generiert. Wichtig ist, dass hier random.sample-Funktion verwendet wird. Die .sample-Funktion sorgt dafür, dass keine doppelten Zahlen generiert werden.
# Leere Liste erstellen
lottozahlen = []
# Liste erweitern um die Zahlen 1 bis 49
lottozahlen.extend(range(1,50))
# 6 Zahlen aus der Liste werden zufällig ausgegen. Bei der Verwendung von .sample werden keine doppelten Zahlen generiert.
lottozahlen_6 = random.sample(lottozahlen, 6)
Die Ausgabe sieht dann so aus:
[44, 18, 28, 37, 1, 42]
Die Reihenfolge stimmt noch nicht und es soll sortiert werden, dass es mit der kleinsten Zahl beginnt. Dafür nutze ich die .sort-Funktion für die Variable lottozahlen_6
# Zahlen werden hier sortiert.
lottozahlen_6.sort()
Am Ende können die Zahlen über die print-Funktion ausgegeben werden. Ich habe mich entschieden es über eine for-Schleife auszugeben und jeweils einen Text zu den Zahlen hinzuzufügen.
# Gezogene Lottozahlen untereinander über einer for-Schleife ausgeben.
for lottozahl in lottozahlen_6:
print ("Die Zahl", lottozahl, "wurde gezogen.")
print("Alle", len(lottozahlen_6), "Lottozahlen wurden gezogen. Viel Glück!")
Die Funktion len(lottozahlen_6) gibt die Anzahl an Werte wieder. Da es nur 6 Zahlen sind, wird dementsprechend die Zahl ausgegeben. Ich hätte natürlich auch die Zahl 6 direkt reinschreiben können in der print-Funktion. Aber ich wollte üben und Python-Funktionen kennen lernen 😉
Würfeln mit random-Funktion
Neben den Lottozahlen mit random-Funktion, habe ich auch ein kleines Würfel-Spiel erstellt. Hier kam .randint-Funktion zum Einsatz, welches Ganzzahlen zufällig generiert.
In diesem Würfel-Simulator habe ich mein Wissen aus vergangene Tutorials angewandt, die beim Mathe-Aufgaben-Generator auch zum Einsatz kamen.
Es ist immer noch wichtig, dass ich oft und regelmäßig das bisher gelernte übe und anwende.
# Würfel-Simulator
# Random Modul importieren
import random
# Abfragen, wie oft gewürfelt werden soll
count = input("Wie oft möchtest du würfeln?: ")
# range-Funktion für die Anzahln an Versuche. Wichtig ist, dass die eingebene Zahl um 1 addiert werden muss.
for wurf in range(1,int(count)+1):
# Ausgabe welcher Wurf
print (str(wurf) + ". Wurf:")
# Ausgabe was gewürfelt wurde. .randint = Ganzahlen; .uniform = Auch Kommazahlen
print("Du hast eine", random.randint(1,6), "gewürfelt!")
# Wenn letzter Versuch noch nicht war, dann fragen ob nochmal gewürfelt werden soll.
if wurf < int(count):
repeat = input("nochmal? (j/n): ")
if repeat == "j":
# Fortsetzen der for-Schleife, wenn nochmal gewürfelt werden soll
continue
else:
# Ausgabe wenn nicht mehr gewürfelt werden soll.
print("Du willst nicht mehr würfeln? Schade.")
break
else:
# Ausgabe, wenn letzter Wurf durch ist.
print("Alle Versuche aufgebraucht.")