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

Резултати

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

Пребарај: #sudafrica

当前筛选 #sudafrica清除筛选
Libertà è ragione

@libertaeragione · Post #4210 · 01.07.2024 г., 20:05

#Spagna#Israele#CIG La Corte internazionale di giustizia (CIG) ha annunciato che la Spagna ha formalmente presentato una dichiarazione di intervento per partecipare al procedimento davanti alla corte, in seguito alla causa intentata dal #Sudafrica contro Israele lo scorso dicembre per genocidio a #Gaza. Fonte: elDiario @OsservatorioEsteri

Libertà è ragione

@libertaeragione · Post #4181 · 24.05.2024 г., 13:32

#CIG#Israele#Gaza Presidente della Corte Internazionale di Giustizia Nawaf #Salam: “Il punto è che Israele deve fermare l'attività militare e qualsiasi altra attività a #Rafah che potrebbe causare danni. C’è il serio pericolo che la situazione giuridica tutelata nella causa intentata dal #Sudafrica sia pregiudicata in attesa della sentenza del tribunale”. @OsservatorioEsteri

Turchia e dintorni

@notizieturchia · Post #3293 · 11.05.2025 г., 09:03

Giornalista #ÇetinerÇetin: "Il #PKK ha organizzato due congressi guidati da #MuratKarayılan e #CemilBayık. Oggi alle 13:00 (ora turca) l'organizzazione dichiara lo scioglimento. Circa 3500 militanti senza un precedente penale rientreranno in #Turchia. Circa 200 alti esponenti andranno a vivere in #Norvegia, #Danimarca e #SudAfrica. Circa 2000 militanti resteranno in Kurdistan iracheno. Nei prossimi 6 anni si svolgeranno i lavori necessari per accertare che tutta la zona sia pulita dai militanti e dalle armi. Molto presto Ankara farà i necessari passi legali".