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

Пребарај: #ruleoflawindex

当前筛选 #ruleoflawindex清除筛选
Hong Kong Democracy Movement

@hkdmovement · Post #7879 · 30.10.2024 г., 18:52

2024年全球法治指數公布 #世界正義工程(World Justice Project)發布的2024年全球法治指數顯示,香港在142個國家中排名第23,與去年相同,但評分從0.73降至0.72。 在「政府權力制約」和「基本權利」方面,香港分別下跌至第62位。特別是言論自由排名驟降至104位,顯示出法治的挑戰。 新加坡排名第16位,得分0.78,中國則排第95位,得分0.47。全球法治的挑戰仍需關注! #全球法治指數#基本權利#法治#自由#民主 2024 Rule of Law Index Released The 2024 Rule of Law Index by the World Justice Project shows Hong Kong ranked 23rd among 142 countries, unchanged from last year, but with a score dropping from 0.73 to 0.72. In "Government Constraints" and "Fundamental Rights," Hong Kong fell to 62nd, with freedom of speech plummeting to 104th, highlighting ongoing challenges to rule of law. Singapore ranks 16th with a score of 0.78, while China is at 95th with a score of 0.47. The challenges to global rule of law require our attention! #RuleOfLawIndex#FundamentalRights#RuleOfLaw#Freedom#Democracy