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

Пребарај: #librecirculation

当前筛选 #librecirculation清除筛选
Egountchi Behanzin Officiel

@egountchibehanzinofficiel · Post #8517 · 12.08.2025 г., 15:47

En Afrique, un Européen voyage librement… mais un Africain est étranger sur son propre continent. L’HYPOCRISIE DOIT CESSER Vous trouvez normal qu’il soit plus facile pour un Européen, grâce à son passeport, de voyager et circuler en Afrique, alors que pour un Africain, il faut des visas presque partout ? On nous parle de panafricanisme et de libre circulation des personnes et des biens, mais dans la réalité, ce ne sont que des discours creux. Il est temps que nos États abolissent les visas entre pays membres de l’Union africaine pour permettre aux Africains de circuler librement sur leur propre continent. Mais cela ne suffit pas : • 🚆 Construire de vraies infrastructures routières et ferroviaires reliant nos capitales et nos régions • ✈️ Faciliter le transport aérien en baissant drastiquement le prix des billets, car il n’est pas normal qu’un trajet Lomé–Abidjan coûte plus cher qu’un Lomé–Paris • Favoriser les échanges commerciaux et culturels entre pays africains en supprimant les barrières inutiles L’Afrique ne pourra pas s’unir tant que ses enfants sont traités comme des étrangers sur leur propre sol. #LibreCirculation#UnionAfricaine#AfriqueSansFrontières Egountchi Behanzin , Commandant en chef de la LDNA @egountchibehanzinTV