Инструменты разработчика

!!! Примечание. Допуск: я (основной разработчик Pydantic) также разрабатываю инструменты Python-devTools.

python-devtools ( pip install devtools ) предоставляет ряд инструментов, полезных во время разработки Python, включая debug() альтернативу print() , которая форматирует вывод таким образом, чтобы его было легче читать, чем print а также предоставляла информацию о в каком файле/строке находится оператор печати и какое значение было напечатано.

Pydantic интегрируется с инструментами разработчика , реализуя метод __pretty__ в большинстве общедоступных классов.

В частности, debug() полезен при проверке моделей:

from datetime import datetime
from typing import List

from devtools import debug

from pydantic import BaseModel


class Address(BaseModel):
    street: str
    country: str
    lat: float
    lng: float


class User(BaseModel):
    id: int
    name: str
    signup_ts: datetime
    friends: List[int]
    address: Address


user = User(
    id='123',
    name='John Doe',
    signup_ts='2019-06-01 12:22',
    friends=[1234, 4567, 7890],
    address=dict(street='Testing', country='uk', lat=51.5, lng=0),
)
debug(user)
print('\nshould be much easier read than:\n')
print('user:', user)

Выведет в ваш терминал:

!!! обратите внимание, что python-devtools пока не поддерживает Python 3.13.


本文总阅读量