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

Резултати

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

Пребарај: #fazo

当前筛选 #fazo清除筛选
Far·hod·jon

@farhodjon · Post #559 · 19.02.2023 г., 05:38

Hozir Yer orbitasida 27 000 dan ortiq sun’iy, odam tomonidan yaratilgan jismlar aylanarkan. Wayfinder orqali shularni real vaqtda kuzatsa bo’ladi. Wayfinder - Privateer kompaniyasiga tegishli va bu kompaniyaning asoschilaridan biri - Stiv Voznyak. Kompaniya insoniyatga fazodan to’g’ri foydalanishga yordam berishni maqsad qilgan. E’tiborlisi, Starlink sun’iy yo’ldoshlari O’zbekiston ustidan ham o’tyapti va bu degani, agar davlat imkon bersa, Starlink orqali internetga chiqish imkoniyati mavjud. Va boshqa qiziq fakt: Starlink yo’ldoshlari sekundiga 7,6 km tezlik bilan harakat qilyapti (bu minutiga 456 km, soatiga 27 360 km!). Saytda har bir jismning tezligini ko’rsa bo’ladi. https://www.privateer.com Eslatib o’taman, Yerning Quyosh atrofidagi orbital tezligi - soatiga 107 000 km (yoki sekundiga deyarli 30 km). Yuqoridagi sayt yuklanguncha hammamiz fazoda 30-60 kmga surilib bo’lamiz. @farhodjon#fazo#kosmos

Hashtags

Far·hod·jon

@farhodjon · Post #373 · 27.05.2020 г., 18:38

Elon Maskning SpaceX kompaniyasi ikkita astronavtni Xalqaro fazo stansiyasiga (XFS) uchiryapti. 2011-yildan beri astronavtlar XFSga Rossiyaning “Soyuz” kemalarida uchishgan. Endi SpaceX kompaniyasining Crew Dragon nomli fazo kemalari yordamida ham uchish yoʻlga qoʻyilyapti. Bugungi parvoz muvaffaqiyatli boʻlishiga juda katta umid qilamiz. YouTubeʼdagi jonli efir: https://youtu.be/rjb9FdVdX5I Bu fazoni oʻrganishdagi juda muhim qadam. Shu paytgacha fazoni oʻrganish, asosan, turli davlatlarning maqsadlariga siyosat va harbiy ehtiyojdan kelib chiqib qoʻshilgan. SpaceX esa aniq maqsadga ega boʻlgan xususiy kompaniya: Marsni kolonizatsiya qilish. Elon Maskka ham ishonsa boʻladi; katta maqsadlar qoʻyib ularni amalga oshiradigan, butun insoniyat kelajagiga hissa qoʻsha oladigan odam. Bundan tashqari, bu va boshqa xususiy kompaniyalar fazoni isloh qilishni asta-sekin arzonlashtirib boryapti: katta yukni orbitaga olib chiqish, yukni orbitaga olib chiqishdagi birinchi bosqichni qayta yerga (platformaga) qoʻndirish kabi. Xullas, bu SpaceX uchun kichik qadam, lekin butun insoniyat uchun katta sakrash. #fazo#kosmos

Hashtags