Skip to main content

Introduzione

  • Questo articolo ti guida attraverso la validazione dei dati con pydantic. Pydantic è una libreria Python costruita in Rust.
  • Prima di iniziare, assicurati di avere Python e la libreria Pydantic installati nel tuo ambiente. Controlla il comando di installazione di pydantic qui sotto.

Creare un modello

  • Per prima cosa, dovremo importare e far ereditare la nostra classe da pydantic.BaseModel per iniziare a validare. Nel nostro esempio creeremo una classe chiamata Person che avrà un nome, un’età e un’e-mail.
  • Con questa classe, quando la istanziamo, pydantic validerà se i parametri name ed email sono stringhe e se age è un intero.

Usare il modello

  • Ora che l’abbiamo creata, istanzieremo la classe. Creeremo un dict contenente i dati e lo spacchetteremo nella nostra classe.
  • L’esempio qui sopra non solleverà alcun errore poiché tutti i parametri sono del tipo corretto. Ora creeremo dei dati errati per verificare se la nostra validazione funziona.
  • Nell’esempio qui sopra verrà sollevato l’errore ValidationError perché age deve essere un intero e non può essere fornito come stringa.

Creare una dataclass

  • Puoi anche creare delle dataclass con pydantic, che saranno simili alle dataclass standard di Python ma avranno validazioni come BaseModel.
  • Se inviamo una string ad age, verrà convertita in int.
Pydantic supporta la validazione ricorsiva, il che significa che quando valida modelli annidati, valida anche i modelli interni.Se una classe ha una lista di Person, people: list[Person], controllerà ogni elemento della lista e lo convertirà in un Person.

Extra

  • Pydantic ha alcuni extra come la validazione delle e-mail e un pacchetto timezone di fallback. Per installarli, devi eseguire i seguenti comandi:
  • Puoi installarli entrambi insieme eseguendo il seguente comando.
  • Pydantic[email] fornisce una classe per gestire le email, normalizzandole e validandone il formato user@domain.tld. Per questo, pydantic fornisce la classe EmailStr per eseguire questa validazione.

Ti è piaciuto questo articolo?

  • Abbiamo creato questo contenuto con grande cura per offrirti il miglior aiuto possibile. Gli sviluppatori hanno già valutato Square Cloud 4,9/5 su 402 recensioni su Google e Trustpilot — lascia anche tu la tua! Ci aiuta a capire cosa conta di più per te.

Google Reviews

Lascia la tua recensione su Google Reviews.

Trustpilot

Lascia la tua recensione su Trustpilot.