Teil 11: Module

Lernziele
  • Erklären, was ein Modul ist und wozu es dient
  • Ein Modul mit import einbinden 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:

  • import bindet ein Modul ein
  • random.randint(a, b) liefert eine ganze Zufallszahl zwischen a und b
  • random.choice(liste) wählt zufällig ein Element aus einer Liste
  • math.pi ist die Kreiszahl
  • math.floor() und math.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 mit random
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.1

Erzeuge zehn Zufallszahlen zwischen 100 und 150 und gib sie aus.

PythonLoading editor…
Aufgabe 11.2

Simuliere 20 Würfe eines Würfels und zähle, wie oft eine Sechs fällt.

PythonLoading editor…
Aufgabe 11.3

Der Computer denkt sich eine Zahl von 1 bis 3 aus. Der Spieler tippt einmal. Gib aus, ob der Tipp stimmt.

PythonLoading editor…
Aufgabe 11.4

Erweitere 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.

PythonLoading editor…
Aufgabe 11.5

Programmiere Schere, Stein, Papier gegen den Computer. Überlege dir zuerst alle Kombinationen und wer jeweils gewinnt.

PythonLoading editor…
Aufgabe 11.6

Vergleiche die vier Rundungsarten. Wende int, round, math.floor und math.ceil auf die Werte 2.3, 2.7, 2.5 und −2.3-2.3 an und halte die Ergebnisse in einer Tabelle fest.

PythonLoading editor…

Weitere Aufgaben

Zusatzaufgabe 11.7

Erzeuge ein sechsstelliges Zufallspasswort aus Ziffern.

PythonLoading editor…
Zusatzaufgabe 11.8

Wirf 1000-mal eine Münze und zähle, wie oft Kopf fällt. Wiederhole das Programm mehrmals. Wie stark schwankt das Ergebnis?

PythonLoading editor…
Zusatzaufgabe 11.9

Schreibe den Kreisrechner aus Teil 8 neu, diesmal mit math.pi. Vergleiche das Ergebnis mit der von Hand getippten Zahl 3.14159.

PythonLoading editor…
Zusatzaufgabe 11.10

Recherchiere, wie du mit random eine Zufallszahl mit Nachkommastellen erzeugst. Schreibe ein Programm, das fünf solche Zahlen zwischen 0 und 1 ausgibt.

PythonLoading editor…