当前位置: 首页 > news >正文

Pydantic

from datetime import date from typing import List from pydantic import BaseModel # Pydantic 的类叫 Model(模型),继承 BaseModel # Pydantic = Python 的数据校验 + 数据模型库,FastAPI 默认自带它 # 强制约束数据格式:尽量帮你把输入转成你声明的类型,转换失败抛校验异常 class User(BaseModel): #校验类必须继承自BaseModel,上述代码中类User(BaseModel) id: int name: str = 'John Doe' # name: str:不是普通 Python 类型提示!pydantic 拿这个做校验规则 data_joined: date | None = None # 结果可以是data类型,若不传则为默认值None departments: List[str] | None = None external_data = { 'id': 123, 'name': '张三', 'data_joined': '2030-06-01', 'departments': ['文体部', '办公室', '宣媒部'], } # **叫字典解包语法,把字典里面每一对 key‑value,拆开变成函数的关键字参数传给 User # 等价于 User(id=123, data_joined="2030‑06‑01", departments=["A","B","C"]) user = User(**external_data) # user 是 Pydantic 模型对象(实例);就像类实例对象,用 . 访问里面的字段值 print(user.id, user.name) # model_dump() 是 Pydantic v2 的内置方法 # 作用:把 Pydantic 对象 → 转换成普通 Python 字典 # 转换为字典 print(user.model_dump())
http://www.jsqmd.com/news/1297824/

相关文章:

  • 防火墙规则与 nmcli 命令使用指南
  • 2026年7月成都市移动2000M融合宽带怎么选_办理时要注意哪些关键细节_ - 找卡家园
  • 2026年7月广东省惠州市电信融合宽带怎么选_避坑指南 - 找卡家园
  • 基层信息化系统整合:数据中台与统一门户的实践方案
  • 基于Spring Boot与Redis的分布式投票系统设计与实现
  • FastAPI初了解
  • Spring Boot民宿系统开发实战与架构设计
  • 密评实战:聚焦设备与计算层面的密码安全合规要点
  • 硬盘接口与协议全解析:从SATA到NVMe,如何选择与优化存储性能
  • DS1302/DS1307 RTC芯片不起振?时钟停止位与写保护位配置详解
  • 2026年7月保定市联通1500M融合宽带申请避坑攻略 - 找卡家园
  • 2026年7月江苏省南京市联通融合宽带一篇说透怎么选 - 找卡家园
  • AI Coding的下一站,不是更会写代码,而是更懂团队
  • 2026年7月东莞市电信2000M融合宽带申请避坑攻略 - 找卡家园
  • STM32 DFSDM外设详解:高精度信号采集的Σ-Δ数字滤波实战
  • Karate DSL:用BDD语法统一API功能与性能测试
  • Android双屏异显实战:解决Presentation黑屏、崩溃与内存泄漏
  • Python实现脉冲神经网络(SNN)的类脑计算实践
  • TVS管选型实战:从核心参数到PCB布局的浪涌与静电防护设计
  • Total Registry:Windows注册表管理的终极免费解决方案
  • Moneta Markets亿汇:围绕移动端体验与产品理解成本的逻辑梳理
  • 有关NRF24L01原理和应用初步总结
  • 2026年7月保定市联通500M融合宽带申请避坑与实测攻略 - 找卡家园
  • 2026年7月东莞市电信1000M融合宽带怎么选、怎么办才靠谱_ - 找卡家园
  • 2026年7月贵州省贵阳市电信宽带申请避坑攻略 - 找卡家园
  • Magisk完整指南:从基础安装到专家级系统定制
  • Cadence电路设计入门:从原理图绘制到仿真验证全流程详解
  • 基于Koishi框架的QQ机器人开发:从事件驱动到插件化实战
  • Python列表查找全攻略:从index()到性能优化与实战避坑
  • Arduino开发双轨制:从Mind+图形化入门到Arduino IDE精通的实战指南