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

Резултати

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

Пребарај: #ayollarkitobklubi

当前筛选 #ayollarkitobklubi清除筛选
Hid Gallyutsinatsiyasi

@TillanisoEN · Post #5453 · 06.02.2025 г., 11:22

#BookClub Joriy yilning 1-fevral kuni Sukut Saqlama Ayollar klubida Nikola Gavining “Jinsiy qurbon emasman, lekin…” maqolasi muhokamasi bo‘lib o‘tdi. Avvalgi postda muhokama doirasidagi ayrim shaxsiy hikoyalarni e’lon qilgan edik. Bugun esa klub koordinatorining quyidagi savoliga javoblarni o‘qishingiz mumkin: Maqola jinsiy zo‘rlash muammosi sifatida tashlangan yana bir nozik firk bor. Bu yaqinlar orasidagi istalmagan jinsiy aloqa. Masalan, er-xotin orasida. Er xohlaydi va ayol bunda ko‘nglini olishga majbur bo‘ladi. Yoki istamasayam rozi bo‘lishga. Sizlar bunga qanday qaraysizlar? Bu ham zo‘ravonlikning bir ko‘rinishi desa bo‘ladimi? Fikrlarni kartochkalarda o‘qishingiz mumkin ▶️▶️▶️ #SukutSaqlama#AyollarKitobKlubi

Hid Gallyutsinatsiyasi

@TillanisoEN · Post #5440 · 04.02.2025 г., 16:26

#BookClub Joriy yilning 1-fevral kuni Sukut Saqlama Ayollar klubida Nikola Gavining “Jinsiy qurbon emasman, lekin…” maqolasi muhokamasi bo‘lib o‘tdi. Muhokama qizg‘in bahs-u munozaraga boy bo‘ldi. Bahsdagi ayrim shaxsiy hikoyalarni e’lon qilishga qaror qildikki, bu mavzuning yig‘ilgan qizlar uchun ham qanchalik dolzarb va og‘riqli ekanini ko‘rsatadi. Fikrlarni kartochkalarda o‘qishingiz mumkin. Maqoladagi jinsiy zo‘rlash muammosi sifatida tashlangan yana bir nozik tomon – yaqinlar orasidagi istalmagan jinsiy aloqa haqidagi Kitob klubi a'zolarining fikrlari bilan keyingi postimizda bo‘lishamiz. #SukutSaqlama#AyollarKitobKlubi