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

Пребарај: #riskappetite

当前筛选 #riskappetite清除筛选
Crypto M - Crypto News

@CryptoM · Post #65257 · 12.04.2026 г., 11:28

🚀 STOCKS | Citic Securities Predicts A-Share Market Recovery Amid Improved Conditions On April 12, Jin10 reported that Citic Securities released a research note indicating a recovery trend in the A-share market this week. According to Jin10, this improvement is attributed to enhanced market risk appetite, liquidity, and fundamentals. Looking ahead, while the pace of growth may slow, the market is expected to continue its upward trajectory in the short term, with medium-term risks posed by sustained high oil prices. April is anticipated to see a return to fundamentals, with a focus on first-quarter reports and identifying promising industries. Industry allocation should center on sectors with high first-quarter prosperity, marginal fundamental improvements, and those benefiting from policy, low allocation levels, and seasonal demand. Key sectors to watch include resources (gold, energy metals, aluminum, minor metals), AI (optical communication, fiberglass, gas turbines), lithium batteries (battery and lithium materials), oil transportation, chemical raw materials, brokerage firms, coal, general equipment, infrastructure construction, and service consumption. #STOCKS#Ashare#MarketRecovery#CiticSecurities#Liquidity#RiskAppetite#Fundamentals#OilPrices#IndustryAllocation#Resources#Gold#EnergyMetals#Aluminum#MinorMetals#AI#OpticalCommunication#Fiberglass#GasTurbines#LithiumBatteries#BatteryMaterials#LithiumMaterials#OilTransportation#ChemicalRawMaterials#Brokerage#Coal#GeneralEquipment#InfrastructureConstruction#ServiceConsumption