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

Резултати

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

Пребарај: #coliseumoffun

当前筛选 #coliseumoffun清除筛选
Rui's Ramble

@RsRamble · Post #592 · 05.07.2024 г., 11:56

这是我修的两张 预览后他要自己来,便连没修的都发了过去 结果,这两张加点对比度,红色改洋红,又选张原图加点对比度 看着区别并不大,不知是不喜欢我修的,还是不想让我发po文? Ins的联名po文会显示在所有作者名下,共通点赞与评论,唯控制权在发送者处 他既不会关闭ins裁剪,又坚持要自己发,还不开点赞计数 很有风格的选手,但我并不喜欢这样 都是原创角色 拍摄于Doujinfes Khatib D1 (2024-06-29) #originalcharacter#cosplay#cyberpunk#scifi#doujinfes#hometeamkhatib#coliseumoffun#singapore

Rui's Ramble

@RsRamble · Post #956 · 14.04.2025 г., 22:17

"When destiny descends, rebellion is our sole recourse." 修自己的图真费劲…… OC的维多利亚战斗妹抖 Doujinfes @ Leisure Park 2025 D2 (2025-02-23) #oc#originalcharacters#maid#cosplay#leisureparkkallang#doujinfes#coliseumoffun#anime#singapore

Rui's Ramble

@RsRamble · Post #591 · 03.07.2024 г., 13:06

『三日月宗近。打ち除けが多い故、三日月と呼ばれる。よろしくたのむ。』 你看我是真的不会画光芒效果 之前就想买套三日月的,可惜一直拖着,立刻下单 刀剑乱舞的三日月宗近 拍摄于Doujinfes Khatib D2 (2024-06-30) #toukenranbu#刀剣乱舞#mikazukimunechika#三日月宗近#cosplay#game#doujinfes#hometeamkhatib#coliseumoffun#singapore

Rui's Ramble

@RsRamble · Post #590 · 01.07.2024 г., 13:51

旗帜上是法国国旗加上ACU的logo,有点巨大就没能拍进去…… 刺客信条大革命的亚诺·维克特·多里安 拍摄于Doujinfes Khatib D2 (2024-06-30) #acu#assasinscreed#assasinscreedunity#arno#arnodorian#arnovictordorian#cosplay#game#videogame#doujinfes#hometeamkhatib#coliseumoffun#singapore