PydanticPython 數(shù)據(jù)驗證工具
pydantic:使用 Python 類型注解進行數(shù)據(jù)驗證和設置管理;快速且可擴展,pydantic 可以很好地與你的 linters/IDE/brain 配合使用。Pydantic 在運行時強制執(zhí)行類型提示,并在數(shù)據(jù)無效時提供用戶友好的錯誤信息。
定義數(shù)據(jù)如何表示為純粹和規(guī)范的 Python ,并使用 pydantic 對其進行驗證。
示例:
from datetime import datetime
from typing import List, Optional
from pydantic import BaseModel
class User(BaseModel):
id: int
name = 'John Doe'
signup_ts: Optional[datetime] = None
friends: List[int] = []
external_data = {
'id': '123',
'signup_ts': '2019-06-01 12:22',
'friends': [1, 2, '3'],
}
user = User(**external_data)
print(user.id)
#> 123
print(repr(user.signup_ts))
#> datetime.datetime(2019, 6, 1, 12, 22)
print(user.friends)
#> [1, 2, 3]
print(user.dict())
"""
{
'id': 123,
'signup_ts': datetime.datetime(2019, 6, 1, 12, 22),
'friends': [1, 2, 3],
'name': 'John Doe',
}
"""
評論
圖片
表情
