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

Резултати

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

Пребарај: #appsheet

当前筛选 #appsheet清除筛选
KOMPYUTER AKADEMIYASI

@Kompyuter_Akademiyasi · Post #6526 · 10.08.2024 г., 12:48

AppSheet platformasidagi ilk dasturim #appsheet / #sheets / #excel Undan tashqari mana shu ketma-ketlikda bazaga kiritilgan barcha ma'lumotlar bo'yicha men belgilab bergan guruhga quyidagicha xabarnoma ham kelib turadi. Ushbu qilingan barcha narsalar uchun hech qanday pul sarflanmaydi, ya'ni appsheetni o'zi ham tekin platforma. AppSheet'da telefon, planshet va kompyuter uchun dasturlar tuzsa bo'ladi (lekin qilingan dasturlar alohida fayl bo'lmaydi, hammasiga AppSheet dasturi orqali kiriladi). 💻 Kompyuterni birga o'rganamiz ⤵️ TelegramIYouTube

Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3557 · 13.12.2024 г., 19:01

AppSheet nima? AppSheet – bu Google Cloud tomonidan taqdim etilgan, dasturlash bilimisiz mobil va veb-ilovalar yaratishga imkon beruvchi platforma. Agar siz Excel, Google Sheets yoki boshqa ma’lumotlar bazasida ishlashni bilsangiz, AppSheet yordamida qulay ilovalar yaratishingiz mumkin. Asosiy xususiyatlari: • Dasturlash shart emas: Kod yozmasdan ilova tuzasiz. • Ma’lumot bilan ishlash:Google Sheets, Excel yoki boshqa bazalardagi ma’lumotlar asosida ilova yaratish mumkin. • Moslashuvchanlik: Ish jarayonlarini avtomatlashtirish va ma’lumotlarni real vaqt rejimida boshqarish. • Ko‘p platformali qo‘llab-quvvatlash:Mobil qurilmalar va kompyuterlar uchun moslashgan. Kimlar uchun foydali? • Biznes egalariga jarayonlarni boshqarishda. • O‘qituvchilarga o‘quv jarayonini soddalashtirishda. • Shaxsiy ishlanmalar uchun ham foydali hisoblanadi #AppSheet#IlovaYaratish#NoCode