Tworzenie dataclass
Dataclasses oferują jeszcze bogatsze możliwości przechowywania danych i pracy z nimi. Wcześniej używaliśmy namedtuple do rejestrowania wpisów dotyczących masy ciała, tworząc wygodną strukturę danych. Teraz użyjemy dataclass, aby zrobić to samo – ale z dodatkową właściwością (property), która zwróci stosunek masy ciała do długości płetwy. Dataclasses zaczynają się od zestawu pól i ich typów. Następnie definiujesz właściwości – czyli funkcje działające na samej dataclass, które zwracają dodatkowe informacje o danych. Na przykład dataclass reprezentująca osobę mogłaby mieć właściwość obliczającą jej aktualny wiek na podstawie daty urodzenia i bieżącej daty.
To ćwiczenie jest częścią kursu
Typy danych w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj
dataclassz modułudataclasses. - Dodaj do dataclass pola:
species(string),sex(string),body_mass(int) orazflipper_length(int). - Dodaj właściwość (
mass_to_flipper_length_ratio), która zwracabody_masspodzielone przezflipper_length.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import dataclass
from ____ import ____
@____
class WeightEntry:
# Define the fields on the class
____: str
____: int
____: int
____: str
# Define a property that returns the body_mass / flipper_length
____
____ mass_to_flipper_length_ratio(____):
return ____.body_mass / ____.____