Як ітерувати по всіх полях моделі Pydantic

Із такою моделлю Pydantic:

pydantic_iter_fields.py
from pydantic import BaseModel, Field

class MyModel(BaseModel):
    variable1: float = Field(default=1.5, help="TODO введіть ваш опис тут")
    variable2: str = Field(default="foobar", help="TODO введіть ваш опис тут")

    # Ці два поля будуть проігноровані в dict()
    _default_paths = ['/data/settings.yaml', './settings.yaml']
    __config__ = {
        "FOO": "BAR"
    }

my_model = MyModel()

можна ітерувати по всіх полях так:

iterate_fields.py
dict(fields)

Це включатиме лише екземпляри Field(), але не _default_paths або __config__.

Приклад виводу:

output.py
{'variable1': 1.5, 'variable2': 'foobar'}

Дивіться схожі статті за категоріями: Pydantic Python