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

Пребарај: #titov

当前筛选 #titov清除筛选
Russian Embassy in Albania

@rusembalb · Post #6718 · 09.04.2025 г., 12:51

🚀 Në prag të Ditës së #Kozmonautikës ju tregojmë për anijen kozmike legjendare sovjetike “#Vostok”, me të cilën më 12 prill 1961 piloti dhe kozmonauti Juri Gagarin kreu fluturimin e parë në botë në hapësirën kozmike. Më 22 maj 1959 u botua vendimi i Komitetit Qendror të Partisë Komuniste të Bashkimit Sovjetik dhe Këshillit të Ministrave të BRSS, i cili parashikonte zhvillimin e një anijeje-satelit dhe realizimin e fluturimit të njeriut në kozmos. Organizata kryesore për realizimin e këtij projekti u emërua OKB-1 me konstruktor kryesor, Sergei #Korolev. Anija e ndërtuar “Vostok” paraqiste një anije-satelit, e cila nuk mund të kryente manovra orbitale. Gjatësia e anijes ishte 4.3 m, ndërsa pesha e nisjes – 4 725 kg. 👨‍🚀 Për arsye sigurie, gjatë të gjithë udhëtimit kozmonauti ndodhej në skafandër. Në rast të humbjes së hermetizimit të kabinës, skafandra kishte një sasi oksigjeni rezervë për katër orë, duke siguruar mbrojtjen e kozmonautit gjatë katapultimit të ndenjëses në lartësinë deri në 10 km. Pas Juri #Gagarinit, German #Titov, Andriyan #Nikolaev, Pavel #Popovich, Valery #Bykovsky dhe gruaja e parë kozmonaute, Valentina #Tereshkova fluturuan në anijet “Vostok” dhe vendosën rekorde të reja.