Teil 11: Module
Lernziele
- Erklären, was ein Modul ist und wozu es dient
- Ein Modul mit
importeinbinden und seine Funktionen aufrufen- Zufallszahlen erzeugen und zufällig aus einer Liste wählen
- Die Rundungsfunktionen unterscheiden
- Ein kleines Spiel mit Zufall programmieren
Neue Befehle:
importbindet ein Modul einrandom.randint(a, b)liefert eine ganze Zufallszahl zwischenaundbrandom.choice(liste)wählt zufällig ein Element aus einer Listemath.piist die Kreiszahlmath.floor()undmath.ceil()runden ab bzw. auf
Module
Ein Modul ist eine Sammlung fertiger Funktionen, eine Art Bibliothek. Python bringt viele davon mit. Damit du sie benutzen kannst, musst du das Modul zuerst einbinden.
import random
zufallszahl = random.randint(1, 6)
print(zufallszahl)
Nach dem import sprichst du die Funktionen mit dem Modulnamen, einem Punkt und dem Funktionsnamen an.
Zufall mitrandom
import random
moeglichkeiten = ["Kopf", "Zahl"]
for i in range(5):
print(random.choice(moeglichkeiten))
Das Modul math
Für Mathematik gibt es das Modul math. Es enthält die Kreiszahl und Funktionen, die Python von sich aus nicht kennt.
import math
print(math.pi)
print(math.sqrt(16))
print(math.floor(2.7))
print(math.ceil(2.1))
3.141592653589793
4.0
2
3
Vier Arten zu runden
Aufgaben
Aufgabe 11.1Erzeuge zehn Zufallszahlen zwischen 100 und 150 und gib sie aus.
Aufgabe 11.2Simuliere 20 Würfe eines Würfels und zähle, wie oft eine Sechs fällt.
Aufgabe 11.3Der Computer denkt sich eine Zahl von 1 bis 3 aus. Der Spieler tippt einmal. Gib aus, ob der Tipp stimmt.
Aufgabe 11.4Erweitere das Spiel: Der Spieler hat fünf Versuche, eine Zahl von 1 bis 20 zu erraten. Nach jedem Versuch soll das Programm melden, ob die gesuchte Zahl grösser oder kleiner ist.
Aufgabe 11.5Programmiere Schere, Stein, Papier gegen den Computer. Überlege dir zuerst alle Kombinationen und wer jeweils gewinnt.
Aufgabe 11.6Vergleiche die vier Rundungsarten. Wende
int,round,math.floorundmath.ceilauf die Werte 2.3, 2.7, 2.5 und an und halte die Ergebnisse in einer Tabelle fest.
Weitere Aufgaben
Zusatzaufgabe 11.7Erzeuge ein sechsstelliges Zufallspasswort aus Ziffern.
Zusatzaufgabe 11.8Wirf 1000-mal eine Münze und zähle, wie oft Kopf fällt. Wiederhole das Programm mehrmals. Wie stark schwankt das Ergebnis?
Zusatzaufgabe 11.9Schreibe den Kreisrechner aus Teil 8 neu, diesmal mit
math.pi. Vergleiche das Ergebnis mit der von Hand getippten Zahl 3.14159.
Zusatzaufgabe 11.10Recherchiere, wie du mit
randomeine Zufallszahl mit Nachkommastellen erzeugst. Schreibe ein Programm, das fünf solche Zahlen zwischen 0 und 1 ausgibt.