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

Резултати

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

Пребарај: #ongutag

当前筛选 #ongutag清除筛选
Comisia Electorală Centrală

@cecmoldova · Post #3537 · 01.04.2026 г., 08:05

‼️𝐂𝐄𝐂 𝐚 𝐝𝐢𝐬𝐜𝐮𝐭𝐚𝐭 𝐜𝐮 𝐬𝐨𝐜𝐢𝐞𝐭𝐚𝐭𝐞𝐚 𝐜𝐢𝐯𝐢𝐥ă 𝐝𝐢𝐧 𝐔𝐓𝐀 𝐆ă𝐠ă𝐮𝐳𝐢𝐚 𝐝𝐞𝐬𝐩𝐫𝐞 𝐩𝐫𝐨𝐯𝐨𝐜ă𝐫𝐢𝐥𝐞 ș𝐢 𝐩𝐞𝐫𝐬𝐩𝐞𝐜𝐭𝐢𝐯𝐞𝐥𝐞 𝐩𝐫𝐨𝐜𝐞𝐬𝐞𝐥𝐨𝐫 𝐞𝐥𝐞𝐜𝐭𝐨𝐫𝐚𝐥𝐞 Participanții au fost informați despre aspectele cadrului legal electoral în privința organizării alegerilor din regiune și rolul CEC în aceste procese electorale. #CECMoldova#DemocrațiaContează#ONGUTAG#Alegeri