Verwendung von Datenklassen
Lass uns die Datenklasse „ WeightEntry
” nutzen, die wir in der letzten Übung erstellt haben. Wir erstellen für jeden Eintrag im weight_log eine Instanz von „ WeightEntry
“ und nutzen dann die Eigenschaft „ mass_to_flipper_length_ratio
“, die wir hinzugefügt haben, um die Berechnung durchzuführen. Hier noch mal ein Hinweis auf unsere Datenklasse „ WeightEntry
“.
@dataclass
class WeightEntry:
# Define the fields on the class
species: str
flipper_length: int
body_mass: int
sex: str
@property
def mass_to_flipper_length_ratio(self):
return self.body_mass / self.flipper_length
Diese Übung ist Teil des Kurses
Datentypen in Python
Anleitung zur Übung
Erstelle eine leere Liste namens
labeled_entries
.Geh die Einträge „
weight_log
” durch und nutze dabei die Tupel-Erweiterung, um „species
”, „flipper_length
”, „body_mass
” und „sex
” herauszulösen.- Füge für jeden Eintrag eine neue Instanz der Datenklasse „
WeightEntry
“ zu „labeled_entries
“ hinzu.
- Füge für jeden Eintrag eine neue Instanz der Datenklasse „
Druck eine Liste der ersten 5 Werte von „
mass_to_flipper_length_ratio
“ mit einer Listenkomprimierung aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create the empty list: labeled_entries
labeled_entries = []
# Iterate over the weight_log entries
for species, flipper_length, body_mass, ____ in weight_log:
# Append a new WeightEntry instance to labeled_entries
____.____(____(species, flipper_length, body_mass, ____))
# Print a list of the first 5 mass_to_flipper_length_ratio values
print([____.____ for entry in labeled_entries[____]])