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

Пребарај: #noescolonia

当前筛选 #noescolonia清除筛选
Antiescuálidos

@antiescualidos · Post #11797 · 16.01.2026 г., 17:27

🇫🇷❄️🇺🇸 Europa le dice a EE.UU.: esto no es el siglo XIX ⚡️Francia elevó el tono y dejó claro lo que muchos en Europa piensan pero pocos dicen en voz alta: EE.UU. no puede seguir comportándose como si el mundo fuera un botín. El ministro francés Roland Lescure advirtió que intentar “apoderarse” de Groenlandia sería cruzar una línea roja, no solo política, sino económica y estratégica para la relación entre Washington y la Unión Europea. 📌 Recordatorio incómodo para la Casa Blanca: 👉 Groenlandia no es colonia. 👉 No es base militar extensible por decreto. 👉 No está en venta ni se negocia bajo amenaza. ⚠️El mensaje de fondo es demoledor: la lógica imperial de “lo quiero, lo tomo” ya no pasa sin costos. Y esta vez, Europa no está dispuesta a mirar al suelo mientras EE.UU. avanza. ❗️Cuando Washington habla de “seguridad”, el mundo escucha expansionismo. Cuando habla de “alianzas”, cada vez suenan más ultimátums. #Groenlandia#Imperialismo#EEUU#UE#Soberanía#NoEsColonia#Geopolítica#DerechoInternacional