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

Резултати

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

Пребарај: #taehyung

当前筛选 #taehyung清除筛选
Bts.bighitofficial

@OUR_7_PRINCES · Post #115341 · 15.12.2025 г., 00:05

VOTE FOR #TAEHYUNG The Most Handsome Man In Asia 2025 /Asian Heartthrob ✅HOURLY https://nubiapage.com/the-most-handsome-man-in-asia-2025-asian-heartthrob/ Today is the last day vote fast

Hashtags

Bts.bighitofficial

@OUR_7_PRINCES · Post #115167 · 11.08.2025 г., 09:00

NEW COMPOSE COFFEE AD CAMPAIGN DETAILS! Compose Coffee announced on the 11th that it will launch three new menus of 'V COMPOSED' in collaboration with the exclusive model BTS V. COMPOSE COFFEE WILL BE ON THE THREE NEW LINEUPS OF 'VCOMPOSED' ON THE CONCEPT OF 'A CUP COMPOSED BY V'. The new lineup consists of Rich Allegro, Yuza Starcato, and Dolce Serenade, and was born with the motif of V's unique atmosphere and musical sensibility, who has been collaborating since 2023. Rich Alegro is a tea variation of green tangerine chamomile and rich, and the flavor of red grass is impressive. Yuza Starcato boasts a bitter and refreshing balance with Goheung yuza juice and grapefruit smoothie. Dolce Serenade added domestic honey and espresso to the blended milk of Compoz's unique. The 3 types of V COMPOSED will be available at Compose Coffee stores nationwide from the 12th. #Taehyung #INFO •@OUR_7_PRINCES•

123•••56
ПретходнаСтраница 1 од 6Следна