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

Резултати

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

Пребарај: #cefrb2

当前筛选 #cefrb2清除筛选
Andijan Development Center

@adceducate · Post #9274 · 13.02.2025 г., 13:08

🎉 CEFR bo‘yicha B2 darajasiga erishgan o‘quvchimizni tabriklaymiz! 🎉 📚 Andijan Development International School har bir o‘quvchisining muvaffaqiyatidan faxrlanadi! Bu yutuq – sifatli ta’lim, kuchli metodika va ustozlarimizning professionalligi natijasidir. 💡 Agar siz ham yuqori natijalarga erishishni istasangiz, bizga qo‘shiling! 🚀 ✉️ Telegram orqali yozing: @admofadc 📞 Qo‘ng‘iroq qiling: 74-226-10-78 📱Telegram | 📱Instagram | 📱Facebook | 📱TikTok | 📱YouTube | 📱Website #AndijanDevelopmentSchool#CEFRB2#InglizTiliBizBilan#O‘quvchilarMuvaffaqiyati

Andijan Development Center

@adceducate · Post #9151 · 08.01.2025 г., 04:24

🌟🤝ADC ўқув маркази ютуғи!🌟 Бизнинг талабамиз Шахобиддинов Исломбек CEFR имтиҳонидан B2 даражага эришди! 🎓✨ Бу натижа 🤝ADC ўқув марказининг самарали таълим тизими ва Исломбекнинг меҳнати орқали қўлга киритилди. Янги имкониятлар сари қадам ташланди! 🌍🚀 🌟Telegram 🌟Instagram 🌟Facebook 🌟TikTok 🌟YouTube #ADCMuvaffaqiyati#CEFRB2#ShahobiddinovIslombek#O’quvMarkazi

Andijan Development Center

@adceducate · Post #9101 · 30.12.2024 г., 09:36

🎉13 yoshli Abduraxmonova Zebuniso’ni CEFR imtihonida B2 darajasiga erishgani bilan tabriklaymiz!💪📚 ✨ Zebuniso - 🤝ADC ta’lim markazi talabasi va uning natijasi bizni ilhomlantiradi. Bu muvaffaqiyat uning mehnati, qat’iyati va ta’limga bo’lgan muhabbati natijasidir. 🌟 🔥 Ushbu yutuq yangi marralar sari birinchi qadam! 🌍✈️ 📢Kelajakda yanada katta yutuqlar kutmoqda!🚀💡 🎯 Biz bilan samarali, qulay va natijali ta'lim oling! 📲 Bugunoq ro'yxatdan o'ting 742261078 Telegram 📺@admofadc 🌟Telegram 🌟Instagram 🌟Facebook 🌟TikTok 🌟YouTube #ADC#CEFRB2#Ta’lim #Motivatsiya#Muvaffaqiyat#OrzularIshonchBilan

Andijan Development Center

@adceducate · Post #8960 · 14.11.2024 г., 15:20

🤝ADC ўқув марказида яна бир 🔢- синф мактаб ўқувчиси CEFR имтиҳонидан B2 сертификатини кўлга киритди! 🎉 Андижонда 13 ёшли ўқувчи Кенжабоева Мухсиба бу ютуқни қўлга киритиб, 🤝ADC ўқувчиларининг интилиш ва меҳнатини намоён этди! 🔥📚 Ўқув даргох танлашда адашманг. сиз хам марказимизга қўшилинг 💪✨ #АндижонФахри#ADCмуваффақияти#CEFRB2#ЁшЮлдузлар#Мотивация 📞 +998742261078 | +998742281121 📞 +998958505111 | +998742276163 📞 +998742252536 | @admofadc 📱Telegram📱Instagram📱Facebook📱TikTok📱YouTube