Klassen Dokumentation: Geld und Flasche

1. Klasse Geld

1.1. Einführung

Die Klasse Geld dient dazu, Beträge in verschiedenen Währungen zu speichern und Wechselkurse zu nutzen, um Beträge zwischen Währungen umzurechnen. Sie enthält sowohl statische Eigenschaften (z. B. Wechselkurse) als auch individuelle Werte für jedes Geldobjekt.

1.2. Aufbau der Klasse

1.2.1. Statische Eigenschaft: wechselkurs

Diese Eigenschaft speichert die Wechselkurse im Verhältnis zum Euro (EUR):

wechselkurs = {'USD': 0.8154, 'GBP': 1.1129, 'EUR': 1.0, 'JPY': 0.0079}

1.2.2. Konstruktor der Klasse

Der Konstruktor wird wie folgt definiert:

def __init__(self, waehrung, betrag):
    self.waehrung = waehrung
    self.betrag = float(betrag)

Bei der Initialisierung eines Objekts werden die Währung und der Betrag als Eigenschaften gespeichert. Der Betrag wird in einen float umgewandelt, um Dezimalwerte zu unterstützen.

1.3. Wechselkurstabelle

Die Wechselkurse im Verhältnis zum Euro (EUR) sind wie folgt definiert:

Währung Wechselkurs (zu EUR)
USD 0.8154
GBP 1.1129
EUR 1.0
JPY 0.0079

2. Klasse Flasche

2.1. Einführung

Die Klasse Flasche simuliert das Verhalten einer Flasche. Sie enthält Methoden, um die Flasche zu öffnen, zu schließen, zu füllen und zu leeren. Außerdem speichert sie den aktuellen Inhalt und das maximale Fassungsvermögen.

2.2. Aufbau der Klasse

2.2.1. Konstruktor der Klasse

Der Konstruktor wird wie folgt definiert:

def __init__(self, fassungsvermoegen):
    self.inhalt = 0
    self.max_inhalt = fassungsvermoegen
    self.geoffnet = False

2.2.2. Methoden der Klasse

2.3. Beispiel für die Klasse Flasche

flasche = Flasche(1000) # Erstellt eine Flasche mit 1000 ml Fassungsvermögen
flasche.oeffnen() # Öffnet die Flasche
flasche.fuellen(500) # Füllt 500 ml in die Flasche
flasche.leeren() # Leert die Flasche
flasche.schliessen() # Schließt die Flasche

3. Verwendung in einer main.py

3.1. Einführung

Die main.py ist das Hauptskript, in dem die Klassen Geld und Flasche verwendet werden. Sie enthält die Logik für die Nutzung der Methoden und zeigt, wie man die Klassen in einem praktischen Szenario einsetzt.

3.2. Beispiel für die Klasse Flasche

Ein Beispielskript könnte so aussehen:

from flasche import Flasche

a = Flasche(1000) # Erstellt eine Flasche mit 1000 ml Fassungsvermögen

a.oeffnen() # Öffnet die Flasche
a.fuellen(345) # Füllt 345 ml in die Flasche

a.leeren() # Leert die Flasche

a.fuellen(999) # Füllt 999 ml in die Flasche
a.fuellen(44) # Füllt zusätzliche 44 ml, was nicht möglich ist, da die Flasche voll ist

a.leeren() # Leert die Flasche

a.fuellen(5555) # Versucht 5555 ml einzufüllen, was nicht möglich ist
a.fuellen(200) # Füllt 200 ml in die Flasche
a.fuellen(200) # Füllt weitere 200 ml in die Flasche

a.schliessen() # Schließt die Flasche
a.leeren() # Kann die Flasche nicht leeren, da sie geschlossen ist

a.fuellen(100) # Kann die Flasche nicht füllen, da sie geschlossen ist

a.oeffnen() # Öffnet die Flasche
a.leeren() # Leert die Flasche

print("Aktuell sind " + str(a.inhalt) + " ml in der Flasche") # Gibt den aktuellen Inhalt aus

3.3. Erklärung des Ablaufs

Hinweis: Die Reihenfolge der Methodenaufrufe beeinflusst den Zustand der Flasche. Beispielsweise kann eine geschlossene Flasche weder gefüllt noch geleert werden.