Einführung
- Dieser Artikel führt dich durch die Datenvalidierung mit Pydantic. Pydantic ist eine in Rust geschriebene Python-Bibliothek.
- Bevor wir beginnen, stelle sicher, dass Python und die Pydantic-Bibliothek in deiner Umgebung installiert sind. Sieh dir den Installationsbefehl für Pydantic unten an.
Ein Modell erstellen
- Zuerst müssen wir es importieren und unsere Klasse von
pydantic.BaseModelerben lassen, um mit der Validierung zu beginnen. In unserem Beispiel erstellen wir eine Klasse namensPerson, die einen Namen, ein Alter und eine E-Mail-Adresse hat.
- Wenn wir diese Klasse instanziieren, validiert Pydantic, ob die Parameter
nameundemailStrings sind undageeine Ganzzahl ist.
Das Modell verwenden
- Nachdem wir es nun erstellt haben, instanziieren wir die Klasse. Wir erstellen ein Dict mit den Daten und entpacken es in unsere Klasse.
- Das obige Beispiel löst keinen Fehler aus, da alle Parameter den korrekten Typ haben. Nun erstellen wir fehlerhafte Daten, um zu bestätigen, dass unsere Validierung funktioniert.
- Im obigen Beispiel wird der Fehler
ValidationErrorausgelöst, daageeine Ganzzahl sein muss und nicht als String angegeben werden kann.
Eine dataclass erstellen
- Mit Pydantic kannst du auch dataclasses erstellen, die den Standard-dataclasses von Python ähneln, aber Validierungen wie BaseModel besitzen.
- Wenn wir einen
stringanagesenden, wird er inintkonvertiert.
Pydantic unterstützt rekursive Validierung, was bedeutet, dass bei der Validierung verschachtelter Modelle auch die inneren
Modelle validiert werden.Wenn eine Klasse eine Liste von
Person besitzt, people: list[Person], prüft Pydantic jedes Element der Liste und konvertiert es in eine Person.Extras
- Pydantic verfügt über einige Extras wie E-Mail-Validierungen und ein Fallback-Zeitzonen-Paket. Um sie zu installieren, musst du die folgenden Befehle ausführen:
- Du kannst beide gemeinsam installieren, indem du den folgenden Befehl ausführst.
- Pydantic[email] bringt eine Klasse zur Verarbeitung von E-Mails mit, die sie normalisiert und das Format
user@domain.tldvalidiert. Dafür stellt Pydantic die KlasseEmailStrbereit, um diese Validierung durchzuführen.
Hat Ihnen dieser Artikel gefallen?
- Wir haben diesen Inhalt mit großer Sorgfalt erstellt, um Ihnen die bestmögliche Hilfe zu bieten. Wenn Ihnen dieser Artikel in irgendeiner Weise geholfen hat, unterstützen Sie unsere Arbeit! Hinterlassen Sie Ihre Bewertung! Sie hilft uns zu verstehen, was Ihnen am wichtigsten ist.
Google Reviews
Hinterlassen Sie Ihre Bewertung bei Google Reviews.
Trustpilot
Hinterlassen Sie Ihre Bewertung bei Trustpilot.

