@waylonwalker's thoughts

2024

pydantic has a nice built in email validator EmailStr

It requires an optional pydantic dependency


pip install email-validator

Then you can validate email addresses.


from pydantic import BaseModel, EmailStr

class Model(BaseModel):
    email: EmailStr

print(Model(email='[email protected]'))
#> email='[email protected]'
https://docs.pydantic.dev/2.7/api/networks/#pydantic.networks.EmailStr