TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #397 · 12 ное.

Использование Pydantic сегодня стало нормой, и это правильно. Но иногда на ревью вижу, что используют его не всегда корректно. Например, метод BaseModel.model_dump() по умолчанию не преобразует стандартные типы, такие как datetime, UUID или Decimal, в простой сериализуемый для JSON вид. Тогда пишут кастмоный сериализатор для этих типов чтобы функция json.dump() не падала с ошибкой. import uuid from datetime import datetime from decimal import Decimal from uuid import UUID from pydantic import BaseModel class MyModel(BaseModel): id: UUID date: datetime value: Decimal obj = MyModel( id=uuid.uuid4(), date=datetime.now(), value='1.23' ) print(obj.model_dump()) # не подходит для json.dump # { # 'id': UUID('4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1'), # 'date': datetime.datetime(2025, 12, 12, 12, 12, 12, 111111), # 'value': Decimal('1.23') # } # добавляем свой кастомный сериализатор json.dumps(obj.model_dump(), cls=MySerializer) # { # 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1', # 'date': '2025-12-12T12:12:12.111111', # 'value': '1.23' # } В данном случае класс MySerializer обрабатывает datetime, UUID и Decimal. Например так: class MySerializer(json.JSONEncoder): def default(self, o): if isinstance(o, Decimal): return str(o) elif isinstance(o, datetime): return o.isoformat() elif isinstance(o, UUID): return str(o) return super().default(o) Специально для тех, кто всё еще так делает - в этом нет необходимости! Pydantic может это сделать сам, просто нужно добавить параметр mode="json". json.dumps(obj.model_dump(mode="json")) # { # 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1', # 'date': '2012-12-12T12:12:12.111111', # 'value': '1.23' # } #pydantic#libs

Резултати

Пронајдени 2 слични објави

Пребарај: #duffy

当前筛选 #duffy清除筛选
Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51438 · 11.12.2025 г., 13:57

🇺🇸#USA - Il segretario alla Salute #Kennedy Jr. e quello ai Trasporti #Duffy hanno fatto una gara di trazioni all’aeroporto Ronald Reagan di Washington. Lo hanno fatto per promuovere il programma “Make Travel Family Friendly Again”, un piano da un miliardo di dollari che vuole rendere gli aeroporti statunitensi luoghi più salutari e accoglienti per le famiglie attraverso l’installazione di mini-palestre o aree gioco per bambini. Kennedy, 71 anni, ha eseguito 20 trazioni, Duffy, 54 anni, ne ha fatte 10. (ilPost) @UltimoraPolitics24

Trump's Ear

@trumpsear_tg · Post #1904 · 13.12.2025 г., 13:19

Robert Kennedy Jr. at 71, pulled more than the 54-year-old transport Secretary Sean Duffy: Duffy is 10 times and Kennedy 20 times. In the United States, for all military officials, a physical training test is mandatory: pull-ups (12-20 times), running (3 ml), push-ups from 10 to 60 times, depending on age. #Kennedy#Duffy#pullups#responsible 👂More on Trump's Ear