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

Пребарај: #renaldogouws

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

@egountchibehanzinOfficiel · Post #6519 · 19.06.2024 г., 17:41

En Afrique du Sud 🇿🇦, une nouvelle vidéo ignoble du nouveau député négrophobe suprémaciste de #RenaldoGouws du parti Alliance Démocratique avec qui l'ANC vient de faire alliance pour gouverner l’Afrique du Sud vient d’être publiée. Dans l'extrait, il appelle à « tuer les cafés (métis) et les nègres » et s'en prend aux populations noires et au chef de la police. Pourtant, les médias mentent en Europe en manipulant l'information en disant qu'en Afrique du Sud il y a un « génocide et du racisme anti-blanc », mais ici la réalité est tout autre. Cette minorité blanche adepte de l'apartheid est toujours violente et s'en prend chaque jour aux noirs dans le pays. Il est maintenant temps que les noirs sud-africains agissent efficacement contre ces hordes de racistes négrophobes dans le pays. Un bon nettoyage s'impose. #Afriquedusud#Southafrica @egountchibehanzinTV