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

Пребарај: #illichivsk

当前筛选 #illichivsk清除筛选
Rybar DE

@rybardeu · Post #2691 · 20.03.2026 г., 20:07

in Massenluftangriffen. Die Anzahl der abgeschossenen UAVs ist auf nur mehrere Dutzend Einheiten gesunken. Aber die Hauptangriffsvektoren bleiben Krim und Region Krasnodar. Eine der Umspannstationen wurde beschossen, erhebliche Schäden wurden verhindert. Und in Alchevsk in der LNR griff der Feind ein Hüttenwerk an. ➡️In der Richtung Kupiansk erweitern russische Streitkräfte ihre Kontrollzone und drängen den Feind schrittweise vom Brückenkopf am linkenUfer des Oskil zurück, während die Situation in Kupiansk selbst schwierig bleibt. 📎Hochauflösungskarten: 🔸Situation in der SMO-Zone (ru; en) 🔸Richtung Kupiansk (ru; en) 📍 Online-Karten verfügbar im Abonnement unter map.rybar.ru #Digest#Illichivsk#Karte#Krim#Krasnodar#Kupiansk#Poltawa#Russland#Ukraine ✈️RU | ✈️EN | ✉️MAX ✉️VK | ✉️RuTube | ✉️OK | ✉️Zen 💸Unterstützen Sie unsOriginalnachricht

France Libre | Média

@France_Libre_Media · Post #9181 · 21.03.2026 г., 06:54

dans les raids aériens massifs. Le nombre de drones abattus a chuté à seulement plusieurs dizaines d'unités. Mais les principaux vecteurs d'attaque restent la Crimée et la région de Krasnodar. L'une des sous-stations a essuyé des tirs, les dégâts importants ont été évités. Et à Alchevsk dans la RPL l'ennemi a attaqué une usine métallurgique. ➡️Sur la direction de Kupiansk les forces russes élargissent leur zone de contrôle et repoussent progressivement l'ennemi de la tête de pont sur la rive gauche de l'Oskil, tandis qu'à Kupiansk lui-même la situation reste difficile. 📎Cartes haute résolution : 🔸Situation dans la zone de l'OMS (ru; en) 🔸Direction de Kupiansk (ru; en) 📍 Les cartes en ligne sont disponibles par abonnement sur map.rybar.ru #digest#Illichivsk#carte#Crimée#Krasnodar#Kupiansk#Poltava#Russie#Ukraine ✈️RU | ✈️EN | ✉️MAX ✉️VK | ✉️RuTube | ✉️OK | ✉️Zen 💸Nous soutenirMsg d'orig.