Creare una dataclass
Le dataclass offrono modi ancora più ricchi per archiviare e lavorare con i dati. In precedenza abbiamo usato una namedtuple per i record del registro dei pesi, così da ottenere una struttura dati semplice e comoda. In questo esercizio useremo una dataclass per fare la stessa cosa, ma aggiungeremo una property personalizzata che restituisce il rapporto tra massa corporea e lunghezza della pinna. Le dataclass partono da una raccolta di campi e dei loro tipi. Poi puoi definire eventuali property, cioè funzioni sulla dataclass che operano su se stessa per restituire informazioni aggiuntive sui dati. Per esempio, una dataclass person potrebbe avere una property che calcola l'età attuale di qualcuno in base alla data di nascita e alla data corrente.
Questo esercizio fa parte del corso
Tipi di dati in Python
Istruzioni dell'esercizio
- Importa
dataclassdadataclasses. - Aggiungi i campi
species(string),sex(string),body_mass(int) eflipper_length(int) alla dataclass. - Aggiungi una property (
mass_to_flipper_length_ratio) che restituiscabody_massdiviso perflipper_length.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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 / ____.____