feat: class tutorials
This commit is contained in:
parent
6e5a0343f6
commit
0ea404ac01
10
class/class_introduction.py
Normal file
10
class/class_introduction.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
|
||||||
|
class Konto():
|
||||||
|
pass
|
||||||
|
|
||||||
|
k1 = Konto()
|
||||||
|
k2 = Konto()
|
||||||
|
|
||||||
|
print(k1)
|
||||||
|
print(k2)
|
||||||
|
print(k1 is k2)
|
||||||
27
class/dataclass_tutorial.py
Normal file
27
class/dataclass_tutorial.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
from dataclasses import dataclass
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class Student:
|
||||||
|
name: str
|
||||||
|
nr: int
|
||||||
|
sem: int
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class Rechteck:
|
||||||
|
breite: float
|
||||||
|
hoehe: float
|
||||||
|
|
||||||
|
def flaeche(self) -> float:
|
||||||
|
return self.breite * self.hoehe
|
||||||
|
|
||||||
|
# Validierung
|
||||||
|
@dataclass
|
||||||
|
class Produkt:
|
||||||
|
name: str
|
||||||
|
preis: float
|
||||||
|
|
||||||
|
def __post_init__(self):
|
||||||
|
if not self.name:
|
||||||
|
raise ValueError("...")
|
||||||
|
if self.preis < 0:
|
||||||
|
raise ValueError("...")
|
||||||
21
class/konto.py
Normal file
21
class/konto.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
class Konto():
|
||||||
|
def __init__(self, inhaber, saldo):
|
||||||
|
if not inhaber:
|
||||||
|
raise ValueError("Inhaber darf nicht leer sein")
|
||||||
|
if saldo < 0:
|
||||||
|
raise ValueError("Saldo darf nicht negativ sein")
|
||||||
|
self.inhaber = inhaber
|
||||||
|
self.saldo = saldo
|
||||||
|
|
||||||
|
def einzahlen(self, betrag):
|
||||||
|
self.saldo += betrag
|
||||||
|
|
||||||
|
def abheben(self, betrag):
|
||||||
|
self.saldo -= betrag
|
||||||
|
|
||||||
|
k = Konto("Alice", 100)
|
||||||
|
print(k.saldo)
|
||||||
|
k.einzahlen(25)
|
||||||
|
print(k.saldo)
|
||||||
|
k.abheben(45)
|
||||||
|
print(k.saldo)
|
||||||
10
class/repr_tutorial.py
Normal file
10
class/repr_tutorial.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
class Konto:
|
||||||
|
def __init__ ( self , inhaber , saldo ) :
|
||||||
|
self . inhaber = inhaber
|
||||||
|
self . saldo = saldo
|
||||||
|
|
||||||
|
def __repr__ ( self ) :
|
||||||
|
return f"Konto(inhaber = {self.inhaber!r}, saldo = {self.saldo!r})"
|
||||||
|
|
||||||
|
k = Konto ( " Alice " , 100.0)
|
||||||
|
print ( k ) # Konto ( inhaber = Alice , saldo =100.0)
|
||||||
15
class/str_tutorial.py
Normal file
15
class/str_tutorial.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
class Konto:
|
||||||
|
def __init__ (self, inhaber, saldo):
|
||||||
|
self.inhaber = inhaber
|
||||||
|
self.saldo = saldo
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return f"Konto(inhaber = {self.inhaber!r}, saldo = {self.saldo!r})"
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"Konto von {self.inhaber}: CHF {self.saldo:.2f}"
|
||||||
|
|
||||||
|
k = Konto ( " Alice " , 100.0)
|
||||||
|
print(str(k)) # __str__
|
||||||
|
print(repr(k)) # __repr__
|
||||||
|
print(k) # bevorzugt __str__ , sonst __repr__
|
||||||
Loading…
x
Reference in New Issue
Block a user