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

Пребарај: #yangikampus

当前筛选 #yangikampus清除筛选

Davlatimiz rahbari “Yangi Oʻzbekiston” universitetining zamonaviy kampusi qurilishi bilan tanishdi ✅Taqdimotda universitet kampusi 3 bosqichda qurilib, birinchi bosqich 2026-yilda bitkazilishi va foydalanishga topshirilishi ta’kidlandi. 🏛️Universitet umumiy 50 gektar maydonni egallab, unda jami 16 ta bino barpo etiladi. Bundan tashqari talabalar uchun 2 ming oʻrinli talabalar yotoqxonasi va professor oʻqituvchilar uchun 286 ta xonadondan iborat 4 ta turar joy qurilishi rejalashtirilgan. 💥Kampus Markaziy Osiyo mintaqasidagi eng yirik va zamonaviy ta'lim maskanlaridan biri sifatida qad rostlaydi. 🔁English ➖➖➖➖➖➖➖➖➖➖➖➖ #yangikampus#YangiToshkent ⬇️Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

Prezident tashrifi: Yangi O'zbekiston Universiteti yangi bosqichga qadam qo‘ymoqda Bugun O‘zbekiston Respublikasi Prezidenti Shavkat MirziyoyevYangi O‘zbekiston universitetining Yangi Toshkent hududida barpo etilayotgan kampusi qurilish jarayoni bilan tanishdilar. 💡Davlatimiz rahbari mazkur kampus va unda yo‘lga qo‘yiladigan ta’lim jarayonlari mamlakatimizdagi barcha oliy ta’lim muassasalari uchun namuna bo‘lishi va 2026–2027 o‘quv yili aynan ushbu ushbu kampusda boshlanishi lozimligini alohida ta’kidladilar. Ushbu kampus nafaqat O‘zbekistonda, balki mintaqadagi eng yirik universitet majmualaridan biri bo‘lishi rejalashtirilgan. Birinchi bosqichda bu yerda: 👍Muhandislik va Iqtisodiyot va boshqaruv maktabi o‘quv binolari, 👍Zamonaviy ilmiy laboratoriyalar, 👍Sun’iy intellektga ixtisoslashgan yirik data markaz, 👍hamda mintaqa miqyosida nufuzli xalqaro laboratoriyalar faoliyat boshlaydi. 🎓Ta’lim jarayonlari universitetning strategik hamkorlari — Massachusetts Institute of Technology va Technical University of Munich bilan hamkorlikda, jahon standartlariga mos tarzda tashkil etiladi. ✨Yangi O‘zbekiston universiteti ushbu kampus orqali mamlakatimiz iqtisodiyotini yangi texnologik bosqichga olib chiqadigan, barcha sohalar uchun yuqori malakali mutaxassislar tayyorlaydigan yetakchi ilmiy-ta’lim markaziga aylanishni maqsad qilgan. 🔁English ➖➖➖➖➖➖➖➖➖➖➖➖ #YangiKampus#YangiToshkent#Innovatsiya ⬇️ Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook