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.

Methoden und Objekte im Einsatz

Im ersten Teil hast du eine Klasse gebaut. Jetzt tun Objekte etwas: Sie rechnen mit ihren Werten, stellen sich lesbar vor, arbeiten in Schleifen und treffen Entscheidungen.

Modul 1 — Methoden, die rechnen

Ein Objekt kann mit seinen eigenen Werten arbeiten.

Eine Liste als Attribut

Ein Attribut darf auch eine Liste sein — zum Beispiel alle Messwerte eines Versuchs. Eine Methode kann daraus etwas berechnen, etwa den Mittelwert mit sum() und len().

class Messreihe:
    def __init__(self, name, messwerte):
        self.name = name
        self.messwerte = list(messwerte)

    def mittelwert(self):
        return sum(self.messwerte) / len(self.messwerte)

list(messwerte) legt eine eigene Kopie der Liste an. Ändert jemand später die ursprüngliche Liste, bleibt das Objekt davon unberührt.

Beispiel 1.1 — Mittelwert einer Messreihe

Python wird geladen…
Ausgabe

    

Modul 2 — Objekte stellen sich vor: __str__

Was print() mit einem Objekt macht.

Ohne __str__ zeigt print nur eine Adresse

Gibst du ein Objekt mit print() aus, erscheint etwas wie <__main__.Messreihe object at 0x…>. Das hilft niemandem. Mit der Methode __str__ legst du selbst fest, welcher Text erscheinen soll — sie gibt einen String zurück, meist aus einem f-String gebaut.

    def __str__(self):
        return f"Messreihe {self.name}: {len(self.messwerte)} Werte"

Danach zeigt print(druck) genau diesen Text. Auch str(druck) liefert ihn.

Beispiel 2.1 — Vorher und nachher

Python wird geladen…
Ausgabe

    

Modul 3 — Objekte in Schleifen

Dieselbe Methode viele Male aufrufen.

Wiederholen und sammeln

Ein Objekt lässt sich in einer Schleife beliebig oft benutzen. Typisch ist ein Akkumulator: eine Variable, die mitzählt oder aufsummiert, und eine Liste, in die Zwischenergebnisse wandern.

summe = 0
ergebnisse = []
for nummer in range(1, 4):
    summe += w.wuerfeln()
    ergebnisse.append(summe / nummer)

Nach jedem Durchlauf steht in ergebnisse der Mittelwert aller bisherigen Würfe — der laufende Mittelwert.

Beispiel 3.1 — Laufender Mittelwert

Python wird geladen…
Ausgabe

    

Modul 4 — Methoden, die entscheiden

Eine Methode kann True oder False zurückgeben.

Wahrheitswert als Ergebnis

Ein Vergleich wie 0 <= wert <= 10 ergibt True oder False. Gibt eine Methode so einen Vergleich zurück, kannst du sie direkt in einer Bedingung verwenden: if sensor.ist_plausibel(wert):

    def ist_plausibel(self, wert):
        return self.minimum <= wert <= self.maximum

PraxisJetzt selbst programmieren

Vier Aufgaben: eine Messreihe mit Mittelwert, dazu __str__, dann die Würfelsimulation mit laufendem Mittelwert und zuletzt ein Drucksensor, der Messwerte prüft.

Beispiel 4.1 — Eine Methode als Bedingung

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.