PPE2/src/classes.py

33 lines
775 B
Python

from dataclasses import dataclass
@dataclass(frozen=True)
class Konto:
inhaber: str
saldo: float
def __init__(self, inhaber: str, saldo: float):
if not inhaber:
raise ValueError("inhaber is required")
if saldo < 0:
raise ValueError("saldo must be positive")
object.__setattr__(self, "inhaber", inhaber)
object.__setattr__(self, "saldo", saldo)
def einzahlen(self, betrag: float):
object.__setattr__(self, "saldo", self.saldo + betrag)
def abheben(self, betrag: float):
object.__setattr__(self, "saldo", self.saldo - betrag)
return betrag
k1 = Konto("Alice", 100.0)
k2 = Konto("Housi", 10)
k2.einzahlen(100)
print(k1.inhaber)
print(k2.saldo)
print(k1 is k2)
print(k1)