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

Резултати

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

Пребарај: #stoppropaganda

当前筛选 #stoppropaganda清除筛选

Дезинформация – это не мнение, это оружие. И пришло время защищаться. Присоединяйтесь к нам на митинге в защиту достоверной информации! Россияне против войны Russi Contro La Guerra Italia участвуют в рабочей группе "Stop propaganda russa" и в организации этого протеста. ❗ Поделитесь анонсом, сделайте репост! #stoppropaganda#stoppropagandarussa#russicontrolaguerra #russian_antiwar_committee #freerussiansglobal 📅 Воскресенье, 2 февраля 🔥15:00 📍Piazza VIII Agosto, Болонья

Привет! Вышла программа на Радио Радикали с участием активистки Russi Contro la Guerra Виктории. Вы можете послушать запись передачи. Мы рекомендуем фрагмент с 9-й по 27-ю минуту, где обсуждается тема пропаганды и участия России в Венецианской биеннале. Вы сможете узнать, как пропаганда законодательно закреплена в РФ. Ссылка Продолжаем собирать подписи в петиции против участия России в Биеннале: ссылка. (На итальянском и английском) Подпишите и поделитесь! È uscita una puntata su Radio Radicale con la partecipazione dell’attivista di Russi Contro la Guerra, Victoriya. Potete ascoltare la registrazione della trasmissione. Consigliamo in particolare il frammento dal minuto 9 al minuto 27, dove si discute del tema della propaganda e della partecipazione della Russia alla Biennale di Venezia. In questa parte si spiega anche come la propaganda sia stata formalmente sancita a livello legislativo nella Federazione Russa. Il link. Continuiamo a raccogliere firme per la petizione: link. (In italiano e l'inglese) Firmate e condividete! #BiennaleDiVenezia#RussiControLaGuerra#StopPropaganda#radioradicale#StandWithUkraine#ArtAndPolitics#NoWar

23 февраля, накануне третьей годовщины полномасштабной войны России против Украины, в центре Рима прошла антивоенная акция THREE YEARS OF TERROR. Акцию организовали активисты Russi Contro la Guerra совместно с объединением демократических диаспор Free Russians Global Свободные россияне / Free Russians Global . В своих выступлениях участники говорили о проблемах и трагедиях, которые уже три года не теряют актуальность: нечеловеческие условия содержания украинских военнопленных в российских тюрьмах, огромные тюремные сроки за инакомыслие в России, депортация детей с оккупированных украинских территорий, тотальная прокремлевская пропаганда, бомбардирующая граждан как внутри России, так и в других странах. Активисты зачитали письма и обращения российских политических заключенных. Вот отрывок из последнего слова Алексея Горинова: «Насилие, агрессия, порождают только ответное насилие и ничего более. Вот истинная причина наших бед, страданий, наших бессмысленных жертв, разрушений объектов гражданской и промышленного инфраструктуры, наших жилищ. Давайте прекратим эту кровавую, никому не нужную бойню — ни нам, ни жителям Украины. Не пора ли оставить в покое наших соседей и заняться своими внутренними проблемами, которые нарастают, как снежный ком». Через три года войны, когда резко меняется мировая политическая ситуация, эта акция около Римских форумов, в историческом центре европейской цивилизации, напомнила: белое – это белое, а черное – это черное. Агрессор остается агрессором, военных преступников необходимо судить, а христианская религия и церковь – это не рупор тезисов государственной власти. В ходе акции собирали средства на закупку портативных электростанций для больниц и школ Украины (благотворительный проект «Энергия для жизни» Антивоенный Комитет России ), После окончания акции желающие присоединились к большому шествию, организованному украинской диаспорой. #3yearsofterror#rawitaly#russiagainstwar#WeStandwithUcraine #russicontrolaguerra #People1st#stoppropaganda#SaveUkraine