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 слични објави

Пребарај: #pontefice

当前筛选 #pontefice清除筛选
Elena Basile Public Channel

@elenabasilepublicchanel · Post #210 · 15.02.2025 г., 18:58

Rispettare la #presidenzadellarepubblica significa conoscerne le competenze e i doveri istituzionali a salvaguardia della Costituzione La critica all' uomo politico per esternazioni non consone ai suoi doveri e non all'altezza dell' incarico istituzionale ricevuto sono non solo possibili ma legittime e doverose. Il Presidente Mattarella è stato per me quando ero Ambasciatrice un punto di riferimento in quanto nei suoi discorsi rintracciavo la difesa del sogno europeo e dei valori costituzionali contro un latente razzismo che si affermava in Italia Inoltre il suo aspetto di buon padre di famiglia non può che ispirare simpatia Eppure credo che oggi un buon politico, un buon giornalista, e un buon cittadino Non possa non esprimere il proprio disaccordo e severamente criticare le reiterate affermazioni senza fondamento storico alcuno Paragonabili a insulti gratuiti Che equiparano la #Russia al #terzoReich Non è la Russia che ci attacca verbalmente È il Presidente Mattarella che attacca gratuitamente la Russia Proprio quando contatti diplomatici tra #Mosca e #Washington sono in corso per porre fine a una guerra sanguinosa in #europa La nostra Costituzione non chiede al nostro Presidente comportamenti del genere. Al contrario essa richiede mediazione e misura Se a questi comportamenti affianchiamo l' assordante silenzio del Presidente Mattarella sui crimini del #GazaGenocide Restiamo attoniti. No Presidente non parla e non tace a nome di tutti gli italiani E non a mio nome Non sono cattolica e non credo nell' infallibilità del #pontefice Eppure #PapaFrancesco è in continuazione criticato sulla #stampa La genuflessione dell' intero spazio politico mediatico a #Mattarella è uno spettacolo pietoso Che purtroppo distrugge le nostre aspettative democratiche E la difesa della nostra #Costituzione