- Notifications
You must be signed in to change notification settings - Fork0
Data validation using Python type hints
License
parhamfh/pydantic
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Data validation using Python type hints.
Fast and extensible, Pydantic plays nicely with your linters/IDE/brain.Define how data should be in pure, canonical Python 3.8+; validate it with Pydantic.
We've started a company based on the principles that I believe have led to Pydantic's success.Learning more from theCompany Announcement.
Pydantic V2 is a ground-up rewrite that offers many new features, performance improvements, and some breaking changes compared to Pydantic V1.
If you're using Pydantic V1 you may want to look at thepydantic V1.10 Documentation or,1.10.X-fixes
git branch. Pydantic V2 also ships with the latest version of Pydantic V1 built in so that you can incrementally upgrade your code base and projects:from pydantic import v1 as pydantic_v1
.
Seedocumentation for more details.
Install usingpip install -U pydantic
orconda install pydantic -c conda-forge
.For more installation options to make Pydantic even faster,see theInstall section in the documentation.
fromdatetimeimportdatetimefromtypingimportList,OptionalfrompydanticimportBaseModelclassUser(BaseModel):id:intname:str='John Doe'signup_ts:Optional[datetime]=Nonefriends:List[int]= []external_data= {'id':'123','signup_ts':'2017-06-01 12:22','friends': [1,'2',b'3']}user=User(**external_data)print(user)#> User id=123 name='John Doe' signup_ts=datetime.datetime(2017, 6, 1, 12, 22) friends=[1, 2, 3]print(user.id)#> 123
For guidance on setting up a development environment and how to make acontribution to Pydantic, seeContributing to Pydantic.
See oursecurity policy.
About
Data validation using Python type hints
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Languages
- Python99.8%
- Other0.2%