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

Пребарај: #landslideresponse

当前筛选 #landslideresponse清除筛选

በጋሞ ዞን በደረሰው አደጋ የተጎዱ ወገኖችን ለመደገፍና አስቸኳይ ምላሽ ለመስጠት እየተሠራ ነው፦ ርዕሰ መስተዳድር አቶ ጥላሁን ከበደ ******************** በጋሞ ዞን ደጋማ አካባቢዎች የጣለውን ከፍተኛ ዝናብ ተከትሎ በደረሰው የናዳ አደጋ እስከ ትላንት አመሻሽ ድረስ የ52 ሰዎች ሕይወት ማለፉ ተመላክቷል። የደቡብ ኢትዮጵያ ክልል ርዕሰ መስተዳድር አቶ ጥላሁን ከበደ እንደገለጹት፤ በአደጋው ለተጎዱ ወገኖች ለሰብዓዊ ሥራዎች ቅድሚያ በመስጠት አስክሬን የማፈላለግና ድጋፍ የማድረስ ተግባራት ተጠናክረው ሊቀጥሉ ይገባል። የክልሉ አደጋ ሥጋት ሥራ አመራር ምክር ቤት ባደረገው አስቸኳይ ውይይት፣ አደጋው የደረሰባቸውን ዜጎች በፍጥነት ወደ ቀድሞ ማኅበራዊ ሕይወታቸው ለመመለስ የሚያስችሉ ዐቢይና ንዑስ ኮሚቴዎች ተዋቅረው ወደ ሥራ እንዲገቡ አቅጣጫ ተቀምጧል። የጋሞ ዞን ዋና አስተዳዳሪ ደምስ አድማሱ (ዶ/ር) በአደጋው የ52 ሰዎች አስክሬን መገኘቱን ገልጸው፤ በአሁኑ ወቅት ሰብዓዊ ድጋፎችን ወደ ሥፍራው ለማድረስ የመንገድ ከፈታና የጥርጊያ ሥራዎች እየተከናወኑ መሆኑን አብራርተዋል። በተመስገን ተስፋዬ #ጋሞ#ኢትዮጵያ#የተፈጥሮአደጋ#ሰብዓዊድጋፍ#Gamo#Ethiopia#LandslideResponse