dataclasses
UtilitiesTypisierte Datenmodelle
Übersicht dataclasses
Das Dataclasses-Modul ist Teil der Python-Standardbibliothek (Python 3.7+). Es bietet einen Dekorator und Funktionen zum automatischen Generieren spezieller Methoden wie __init__, __repr__, __eq__ und __hash__ für Klassen, die hauptsächlich zum Speichern von Daten verwendet werden. Datenklassen reduzieren den Boilerplate und sorgen gleichzeitig dafür, dass Ihre Modelle lesbar und wartbar sind.
Da Datenklassen Teil der Standardbibliothek von Python sind, funktionieren sie sofort inPyRun, ohne dass zusätzliche Importe oder Micropip-Downloads erforderlich sind. Sie sind die einfachste Möglichkeit, strukturierte Datenmodelle in Python zu definieren, und eignen sich besonders zum Erlernen der objektorientierten Programmierung oder zum Erstellen kleiner Apps.
Code- und Ausführungsausgabe
Typisierte Modelle mit Sortierung und Asdict-Serialisierung.
from dataclasses import dataclass, field, asdict
from typing import List
@dataclass(order=True)
class Student:
name: str
grade: float
subjects: List[str] = field(default_factory=list)
def gpa_letter(self) -> str:
if self.grade >= 90: return 'A'
if self.grade >= 80: return 'B'
if self.grade >= 70: return 'C'
return 'D'
students = [
Student("Alice", 94.5, ["Math", "Physics"]),
Student("Bob", 78.2, ["History", "English"]),
Student("Charlie", 88.0, ["CS", "Math", "Bio"]),
]
for s in sorted(students, reverse=True):
print(f"{s.name:<10} GPA={s.grade:.1f} ({s.gpa_letter()}) — {', '.join(s.subjects)}")
print("\nAs dicts:")
for row in students:
print(asdict(row))Verwandte Pakete
Empfohlene Python-Ressourcen
Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.
Python-Schleifen
Erfahren Sie, wie Sie Python-Schleifen zum Durchlaufen von Daten verwenden. Beherrschen Sie Best Practices für For-Schleifen, While-Schleifen, Break, Continue und Loop anhand interaktiver Beispiele.
So sortieren Sie eine Liste in Python
Erfahren Sie, wie Sie eine Liste in Python mit der Methode sort() und der Funktion sorted() sortieren. Entdecken Sie Beispiele für benutzerdefinierte Schlüsselsortierung und umgekehrte Reihenfolge.
Spickzettel für Python-String-Methoden
Ein vollständiges Referenzhandbuch für die Python-String-Manipulation. Meistern Sie das Formatieren, Suchen, Teilen, Ersetzen und Überprüfen von Zeichenfolgeneigenschaften.
Python vs. JavaScript: Welche Programmiersprache ist die beste?
Ein umfassender Vergleich zwischen Python und JavaScript. Entdecken Sie Syntaxunterschiede, Leistung, Anwendungsfälle (Backend vs. Frontend) und Codierungsbeispiele.