Files
2026-04-23 11:15:33 +02:00

69 lines
1.5 KiB
Python

class Osoba:
ilosc_osob: int = 0
def __init__(
self,
pesel: str,
imie: str,
nazwisko: str,
wzrost: float = 0.0,
waga: float = 0.0,
) -> None:
self.__pesel = pesel
self.__imie = imie
self.__nazwisko = nazwisko
self.__wzrost = wzrost
self.__waga = waga
Osoba.ilosc_osob += 1
@property
def pesel(self) -> str:
return self.__pesel
@property
def imie(self) -> str:
return self.__imie
@property
def nazwisko(self) -> str:
return self.__nazwisko
@property
def wzrost(self) -> float:
return self.__wzrost
@wzrost.setter
def wzrost(self, nowy_wzrost: float) -> None:
if nowy_wzrost <= 0:
self.__wzrost = 0
return
self.__wzrost = nowy_wzrost
@property
def waga(self) -> float:
return self.__waga
@waga.setter
def waga(self, nowa_waga: float) -> None:
if nowa_waga <= 0:
self.__waga = 0
return
self.__waga = nowa_waga
@property
def data_urodzenia(self) -> str:
return self.__pesel[:6]
def __del__(self):
Osoba.ilosc_osob -= 1
del self
def __hash__(self) -> int:
return int(self.__pesel)
def __str__(self) -> str:
return f"{self.__pesel}, {self.__imie}, {self.__nazwisko}"
def __repr__(self):
return f"Osoba(pesel={self.__pesel}, imie={self.__imie}, nazwisko={self.__nazwisko}, wzrost={self.__wzrost}, waga={self.__waga})"