Поле модели Pydantic со значением по умолчанию не проходит проверку типаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Поле модели Pydantic со значением по умолчанию не проходит проверку типа

Сообщение Anonymous »

В следующем коде показана ошибка pylance (pyright) для AModel() из-за отсутствия аргумента для параметра «field_b»:

Код: Выделить всё

from pydantic import BaseModel, Field
from typing import Optional, Any

class AModel(BaseModel):
field_a: str = Field()
field_b: Optional[bool] = Field(None)

instance_1 = AModel(field_a="", field_b=None)  # No error
instance_2 = AModel(field_a="")  # Error
#            ^^^^^^^^^^^^^^^^^^

kwargs: dict[str, Any] = {"field_a": "", "field_bad": True}
instance_3 = AModel(**kwargs)  # No error but no type checking
Можно ли создать экземпляр этой модели без указания field_b=None и при этом сохранить проверку типа?


Подробнее здесь: https://stackoverflow.com/questions/786 ... e-checking
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»