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

Пребарај: #gkn

当前筛选 #gkn清除筛选
Maurizio Vezzosi

@mauriziovezzosi · Post #389 · 19.09.2021 г., 16:50

Un fondo finanziario britannico ha deciso di chiudere uno dei due stabilimenti italiani di GKN, azienda che in Italia ha ereditato dalla Fiat la produzione di componenti automobilistici. A luglio questa decisione è stata comunicata con una email a tutti i lavoratori dello stabilimento di Campi Bisenzio (Firenze), quasi 500. Da oltre due mesi i lavoratori di Campi Bisenzio si sono impossessati dello stabilimento - con bilanci in attivo e ordini inevasi - e stanno impedendo che i macchinari ad alta tecnologia - sviluppati anche sulla base dei brevetti messi a disposizione dalle università italiane - vengano smontati e trasportati altrove. Mentre le istituzioni balbettano, i lavoratori di Campi Bisenzio vogliono impedire ad ogni costo che l'epilogo di questa vicenda sia l'ennesima tragedia annunciata che si consuma in Italia. Ed hanno chiaro che, per quanto faticoso, sia possibile non solo bloccare quei licenziamenti, non solo far ripartire la produzione dello stabilimento di Campi Bisenzio, ma istituire una legge antidelocalizzazioni, pretendere l'intervento dello stato nei settori strategici – e non certo per regalare soldi o sussidi –, costruire un piano industriale non solo per il settore automobilistico, ma per le prospettive generali dell'industria italiana. Consapevoli del fatto che la costruzione di un'Italia diversa e di un nuovo Risorgimento non è più rimandabile. #gkn#lavoro#italia#industria