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

Пребарај: #sicw

当前筛选 #sicw清除筛选
Russian Mission to ASEAN

@aseanrussia · Post #718 · 20.10.2023 г., 14:31

Embassy of the Russian Federation in Singapore 🗓 On October 16-19, delegation led by the Special Representative of the President of the Russian Federation for International Cooperation in the Field of Information Security, Director of the Department of International Information Security of the Russian MFA H.E. Mr. Artur Lyukmanov 🇷🇺 took part in the 8th Singapore International Cyber Week (#SICW). 🔹️Russia consistently promotes dialogue and cooperation in the #ICT domain, advocates for unified negotiation track on international information security issues under the UN auspices after 2025. Russia firmly supports the efforts of the OEWG under the able chairmanship of Singapore PR to the UN H.E. Burhan Gafoor 🇸🇬 and Ad-Hoc Committee to elaborate a comprehensive international convention on combating the use of ICTs for criminal purposes. 🔹️ Russia is eager to build up engagement with #ASEAN Member States with a special emphasis on capacity building in combating the use of ICTs for criminal purposes. On the sidelines of the SICW the Russian delegation held bilateral meetings with Laos 🇱🇦, Malaysia 🇲🇾, the Philippines 🇵🇭, Vietnam 🇻🇳, Thailand 🇹🇭, Brunei 🇧🇳 and Singapore 🇸🇬 to discuss issues of common concern.