Zwischenstand speichern / laden

Speichere deine Laborergebnisse für 48 Stunden auf diesem Server. Mit dem Token kannst du sie auch auf einem anderen Gerät fortsetzen. Wer den Token kennt, kann deinen Stand öffnen.

Zwischenstand speichern

Der Name ist beim ersten Speichern Pflicht und danach fest mit diesem Stand verbunden. Aufgabenwerte, Eingaben und Fortschritt werden gemeinsam gespeichert.

Zwischenstand laden

Neuer Arbeitsstand

Beginnt mit leeren Ergebnissen und einem frei wählbaren Namen. Bereits gespeicherte Tokens bleiben bis zu ihrem Ablauf gültig. Ungespeicherte Änderungen dieses Tabs werden verworfen.

Beim Speichern werden auch enthaltene Messdateien und Analysevideos an diesen Server übertragen. Laufende Simulationen werden als Ergebnisstand gesichert und beim Laden pausiert angezeigt.

Eine Klasse ist ein Bauplan, ein Objekt ist ein Ding, das nach diesem Bauplan gebaut wurde. Du lernst hier vier Bausteine, jeden einzeln: Klasse, Objekt, Attribut, Methode.

Modul 1 — Bauplan und Objekt

Eine Klasse beschreibt, ein Objekt ist.

Was ist eine Klasse?

Stell dir einen Bauplan für Würfel vor. Der Plan selbst ist kein Würfel — aber nach ihm kannst du beliebig viele Würfel bauen. In Python heißt der Bauplan Klasse, jeder gebaute Würfel heißt Objekt.

Eine Klasse beginnt mit dem Schlüsselwort class und einem Namen, der groß geschrieben wird. Das Wort pass bedeutet: „hier steht vorerst nichts“.

class Wuerfel:
    pass

w1 = Wuerfel()
w2 = Wuerfel()

Der Aufruf Wuerfel() mit den runden Klammern baut ein neues Objekt. w1 und w2 sind zwei verschiedene Würfel nach demselben Plan.

Beispiel 1.1 — Zwei Objekte aus einem Bauplan

Python wird geladen…
Ausgabe

    

Modul 2 — Attribute mit __init__ und self

Jedes Objekt merkt sich seine eigenen Werte.

Der Konstruktor __init__

Ein Würfel soll wissen, wie viele Seiten er hat. Solche gespeicherten Werte heißen Attribute. Angelegt werden sie in der Methode __init__ (zwei Unterstriche vorn und hinten). Python ruft sie automatisch auf, sobald ein Objekt gebaut wird.

class Wuerfel:
    def __init__(self, anzahl_seiten):
        self.seiten = anzahl_seiten

w = Wuerfel(6)
print(w.seiten)

self steht für „dieses eine Objekt“. Die Zeile self.seiten = anzahl_seiten hängt den Wert an genau den Würfel, der gerade gebaut wird. Von außen liest du ihn mit w.seiten.

Standardwerte

Wie bei Funktionen darf ein Parameter einen Standardwert haben: def __init__(self, anzahl_seiten=6). Dann baut Wuerfel() einen Sechserwürfel, Wuerfel(20) einen mit zwanzig Seiten.

Beispiel 2.1 — Jedes Objekt hat eigene Werte

Python wird geladen…
Ausgabe

    

Modul 3 — Die erste Methode

Eine Funktion, die zum Objekt gehört.

Methode = Funktion im Objekt

Eine Methode ist eine Funktion, die in der Klasse steht. Sie bekommt als ersten Parameter immer self, damit sie auf die Attribute des Objekts zugreifen kann. Aufgerufen wird sie mit einem Punkt hinter dem Objekt.

class Wuerfel:
    def __init__(self, anzahl_seiten=6):
        self.seiten = anzahl_seiten

    def maxwert(self):
        return self.seiten

w = Wuerfel(20)
print(w.maxwert())

Beim Aufruf w.maxwert() schreibst du self nicht hin — Python setzt dort automatisch das Objekt w ein.

Beispiel 3.1 — Methode aufrufen

Python wird geladen…
Ausgabe

    

Modul 4 — Zufall im Objekt

Mit NumPy erhält der Würfel zufällige Augenzahlen.

Zufallszahlen mit NumPy

Nach import numpy liefert numpy.random.randint(low, high) eine zufällige ganze Zahl ab der unteren Grenze bis unter die obere Grenze. Für einen Sechserwürfel ist das numpy.random.randint(1, 7). Mehrere Würfe dürfen dieselbe Zahl ergeben.

import numpy

print(numpy.random.randint(1, 7))
print(numpy.random.randint(1, 7))

In der Methode leitest du die obere Grenze aus der Seitenzahl des Objekts ab: Seitenzahl plus 1. So kann auch die höchste Augenzahl gewürfelt werden.

PraxisJetzt selbst programmieren

Die vier Aufgaben bauen die Würfelklasse Schritt für Schritt: Bauplan mit Attribut, Methode maxwert(), Methode wuerfeln(), zwei Würfel zusammen.

Beispiel 4.1 — Zufallszahlen

Python wird geladen…
Ausgabe

    

Quellen und weiterführende Literatur

Grundlage des Moduls und vertiefende Python-Referenzen.

Lehrmaterial und Dokumentation

  • Vorlesungsnotebook IngInfo_WS26_27_VÜ.ipynb, Abschnitt Objektorientiertes Programmieren.
  • Python Tutorial — Classes.
  • Real Python — Object-Oriented Programming in Python.
  • Theis, Thomas: Einstieg in Python. 7. Auflage, Rheinwerk Verlag, 2023.