Python - pydantic(2)嵌套模型
2021/9/12 22:34:39
本文主要是介绍Python - pydantic(2)嵌套模型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
简单的栗子
class User(BaseModel): id: int # 必填字段 name: str = "小菠萝" # 有默认值,选填字段 signup_ts: Optional[datetime] = None friends: List[int] = [] # 列表中元素是 int 类型,或可以直接转成 int 的类型 # 关键字参数 user = User(id="1", name="大菠萝", signup_ts="2021-09-16 12:22") print(user.dict()) # 字典解包传参 data = { "id": "2", "name": "大大的菠萝", "friends": [1, 2, 3] } user = User(**data) print(user.dict()) # 输出结果 {'id': 1, 'name': '大菠萝', 'signup_ts': datetime.datetime(2021, 9, 16, 12, 22), 'friends': []} {'id': 2, 'name': '大大的菠萝', 'signup_ts': None, 'friends': [1, 2, 3]}
嵌套模型
可以使用模型本身作为数据类型提示来定义更复杂的分层数据结构
from typing import List from pydantic import BaseModel class Foo(BaseModel): count: int size: float = None class Bar(BaseModel): apple = 'x' banana = 'y' class Spam(BaseModel): foo: Foo bars: List[Bar] f = Foo(count=2) b = Bar() s = Spam(foo=f, bars=[b]) print(s.dict()) # 输出结果 {'bars': [{'apple': 'x', 'banana': 'y'}], 'foo': {'count': 2, 'size': None}}
这篇关于Python - pydantic(2)嵌套模型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门
- 2024-11-14Python编程入门指南
- 2024-11-13Python基础教程
- 2024-11-12Python编程基础指南
- 2024-11-12Python基础编程教程
- 2024-11-08Python编程基础与实践示例
- 2024-11-07Python编程基础指南
- 2024-11-06Python编程基础入门指南
- 2024-11-06怎么使用python 计算两个GPS的距离功能-icode9专业技术文章分享