PydanticPython 数据验证工具

联合创作 · 2023-09-28 10:06

pydantic:使用 Python 类型注解进行数据验证和设置管理;快速且可扩展,pydantic 可以很好地与你的 linters/IDE/brain 配合使用。Pydantic 在运行时强制执行类型提示,并在数据无效时提供用户友好的错误信息。

定义数据如何表示为纯粹和规范的 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',
}
"""
浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报