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

Пребарај: #weloveclc

当前筛选 #weloveclc清除筛选
Co-Learning Center

@colearninguz · Post #78 · 27.12.2020 г., 08:14

📣Siz ham ishtirok etdingizmi? Esingizda boʻlsa, 5-oktabr kuni Co-Learning Center Backend, Frontend va Grafik Dizayn darslariga start berilgan edi. Mana zum deganda oʻquvchilar ushbu kurslarni ham tamomlashdi. Yuqoridagi rasmlar orqali bitiruv marosimi qay darajada koʻtarinki ruhda oʻtganini koʻrishingiz mumkin. ✅ Yana bir bor yodingizga solamiz, ushbu kurslar Toshkent shahridagi INHA universiteti talabalari uchun Co-Learning Center mutaxassislari tomonidan mutlaqo bepulga oʻtildi. 🔥 Oldinda sizni bundanda ajoyib yangiliklar kutmoqda! Bizdan uzoqlashmang! #weloveCLC#CLC_uz @colearninguz

Co-Learning Center

@colearninguz · Post #67 · 27.12.2020 г., 08:08

🥳 Uraaa, bizning birinchi SMM kursimiz qaldirgʻochlari muvaffaqiyatli tamomlashdi! 🎉 Doʻstlar, bitiruvchilarimizning marosim oldidan tashkillashtirgan kichik intervyusi bilan ushbu videoda tanishishingiz mumkin! Eslatib oʻtamiz, ushbu kurslar Toshkent shahridagi INHA universiteti ichidagi Co-Learning Markazida boʻlib oʻtdi va mutlaq bepulga amalga oshirildi. Bizni kuzatishda davom eting, tez kunda sizlarni “super” yangiliklar kutmoqda! #weloveCLC#CLC_uz @colearninguz

Co-Learning Center

@colearninguz · Post #219 · 16.07.2021 г., 12:30

📅Kuni kecha Co-Learning Center 2 ta kurs nihoyasiga yetdi. Bu safar kurslarimizga nafaqat Inha balki boshqa o'quv muassasalaridan o'quvchilar qabul qildik. ✅ Yakunlangan SMM Specialist.3 va Flutter - mobile development kurslarida natija borasida ham o'sish sezildi. Mentorlarimiz Sadriddin Abduraximov va Abdurahim Abdullaev vazifalariga professional yondashishdi. Endigi kurslarimiz qaysi yo'nalishda bo'lishini xohlaysiz? Izohlarda javobingizni qoldiring 👇 Sizga foydali bilim ulashishdan doimo mamnunmiz — @colearninguz💛 #weloveCLC#flutter#SMM#mobile_development#graduation#lucky