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

Пребарај: #edgerunners

当前筛选 #edgerunners清除筛选
Geex 👾

@GeexNoticias · Post #1000 · 05.10.2023 г., 21:59

CD Projekt actualiza el estado de desarrollo de #ProjectOrion, la secuela de #Cyberpunk2077 El director creativo de CD Projekt RED, Adam Badowski, habla sobre Project Orion y la ruta planeada para el desarrollo de la secuela de Cyberpunk. La franquicia se dirige hacia su futuro inmediato, que pasa por una secuela y un ambicioso proyecto live-action, que bien haría en parecerse a #Edgerunners. En una reunión Badowski ha actualizado el estado deProject Orion. ¿Cuánto falta para la secuela de Cyberpunk? Una cosa está clara: Project Orion está todavía muy lejos. Es cierto que Cyberpunk no tendrá más expansiones, pero en estos momentos hay varios frentes abiertos en CD Projekt. Según Adam Badowski, Project Orion todavía está en sus etapas iniciales de desarrollo. Concretamente: ''Este proyecto se encuentra en un nivel de diseño conceptual en este momento y será diseñado por un equipo de veteranos que fueron responsables de ajustar Cyberpunk 2077 y diseñar Phantom Liberty''.

👉Давно у нас не было новых тем 🗣Пересмотрел тут Cyberpunk: Edgerunners и набросал новую минималистичную тему с красивыми градиентами 🚬 Кстати мульт можете посмотреть в нашем кинотеатре в комментах под этим постом⬇️ #comicstheme#theme#тема#андроид#edgerunners