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

Пребарај: #avenger

当前筛选 #avenger清除筛选

⚡️🇺🇸🇮🇷США, похоже, продолжают подгонять ПВО под возможное расширение войны против Ирана В сети появились кадры колонны AN/TWQ-1 Avenger, двигавшейся в район авиабазы Макдилл. Эти комплексы ближней ПВО предназначены для прикрытия наземных сил от дронов, низколетящих целей и ракетных угроз. Почему это важно: MacDill AFB в Тампе напрямую связана с U.S. Central Command, а именно CENTCOM отвечает за американские операции на Ближнем Востоке. То есть даже если официально никто пока не говорит, что именно эту технику готовят под Иран, сам характер движения выглядит как подготовка к сценарию, где США ждут ответных ударов дронами и ракетами по своим силам и объектам. Тем более что на фоне нынешней эскалации Иран уже применяет такие средства по целям в регионе. 📌Иными словами: когда к возможному театру войны подтягивают именно системы прикрытия от БПЛА и ракет, это уже похоже не на “демонстрацию силы”, а на подготовку к затяжной и более опасной фазе конфликта. Если США усиливают именно защиту наземных сил, значит в Вашингтоне уже считают вариант большой региональной эскалации вполне реальным. #США#Иран#БлижнийВосток#ПВО#Avenger#Геополитика#CENTCOM 🇦🇲Моя Армения🇦🇲Իմ Հայաստան Подписаться 👉@Im_Hayastan