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

Пребарај: #ficg

当前筛选 #ficg清除筛选

Латиноамериканское кино: премьеры, фестивали и международные награды 👉Мексиканский sci-fi документальный фильм выйдет на двух крупных фестивалях Документальный фильм “Daughters of the Forest” (Hijas del bosque) мексиканского режиссера Отилии Портильо Падуа проведет мировую премьеру на CPH:DOX — международном фестивале документального кино в Копенгагене (Дания), который пройдет 11–22 марта. Затем картина будет показана на SXSW — международном фестивале кино, музыки и технологий в Остине (США). Фильм рассказывает историю двух молодых женщин из коренных общин Мексики, которые изучают экосистемы грибов в штатах Оахака и Мехико. Их работа объединяет научные исследования и традиционные знания, а также поднимает вопросы экологии и сохранения природы. 👉В Гвадалахаре объявили программу 41-го международного кинофестиваля Организаторы Фестиваля международного кино в Гвадалахаре (FICG) представили программу 41-го выпуска, который пройдет 17–25 апреля. Почетным гостем фестиваля станет Чили. Особым событием станет участие режиссера Даррена Аронофски, который получит Международную награду фестиваля. Также будет отмечена мексиканская актриса Луиса Уэртас. Фестиваль откроется фильмом “Moscas” — пятым полнометражным фильмом мексиканского режиссера Фернандо Эймбке. Кроме того, в рамках фестиваля пройдет специальный показ его культовой картины “Temporada de Patos”, которой в этом году исполняется 22 года. #Мексика#КиноЛАТАМ#FICG#LatAm#фестивали#Guadalajara#документальноекино#moscas 👉Всегда свежие новости о странах Латинской Америки