Aan de slagGa gratis aan de slag

Een dataclass maken

Dataclasses bieden nog rijkere manieren om gegevens op te slaan en mee te werken. Eerder gebruikten we een namedtuple voor gewichtlogs om een fijne, gebruiksvriendelijke datastructuur te maken. In deze code gebruiken we een dataclass om hetzelfde te doen, maar we voegen een aangepaste property toe die de verhouding tussen lichaamsmassa en flipperlengte teruggeeft. Dataclasses beginnen met een verzameling velden en hun types. Daarna definieer je eventuele properties: dat zijn functies op de dataclass die op zichzelf werken om extra informatie over de gegevens te geven. Een voorbeeld: een dataclass voor een persoon kan een property hebben die iemands huidige leeftijd berekent op basis van hun geboortedatum en de huidige datum.

Deze oefening maakt deel uit van de cursus

Datatypen in Python

Cursus bekijken

Oefeninstructies

  • Importeer dataclass uit dataclasses.
  • Voeg de velden species (string), sex (string), body_mass (int) en flipper_length (int) toe aan de dataclass.
  • Voeg een property toe (mass_to_flipper_length_ratio) die body_mass deelt door flipper_length en dat resultaat teruggeeft.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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 / ____.____
Code bewerken en uitvoeren