Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python pydantic

作者:——愿望   发布日期:2026-02-16   浏览:110

from pydantic import BaseModel, ValidationError, validator

# 定义一个 Pydantic 模型类
class User(BaseModel):
    id: int
    name: str
    signup_ts: float = None

    # 自定义验证器,确保名字长度大于2
    @validator('name')
    def name_must_be_valid(cls, v):
        if len(v) <= 2:
            raise ValueError('name must be longer than 2 characters')
        return v

# 创建 User 实例
user = User(id=123, name='John Doe', signup_ts=123456789.0)

# 打印 User 实例
print(user)

# 尝试创建一个无效的 User 实例
try:
    invalid_user = User(id=123, name='Jo')
except ValidationError as e:
    print(e)

解释说明:

  • BaseModel 是 Pydantic 的基类,用于定义数据模型。
  • User 类继承自 BaseModel,并定义了三个字段:idnamesignup_ts。其中 signup_ts 是可选字段,默认值为 None
  • 使用 @validator 装饰器定义了一个自定义验证器,确保 name 字段的长度大于2个字符。
  • 创建 User 实例时,Pydantic 会自动验证传入的数据,并在验证失败时抛出 ValidationError 异常。
  • 通过 try-except 块捕获并处理验证错误。

这段代码展示了如何使用 Pydantic 进行数据验证和模型定义。

上一篇:python解方程

下一篇:python random.choice

大家都在看

python excel 库

python时间格式

pythoneval函数用法

列表切片操作python

python读取文件路径

staticmethod在python中有

python 保存json文件

python开发windows应用程序

python中len是什么意思

python 私有函数

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站