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

Резултати

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

Пребарај: #capitalization

当前筛选 #capitalization清除筛选
Venture Village Wall 🦄

@venturevillagewall · Post #3439 · 19.12.2024 г., 08:00

Exodus Surges on NYSE Debut Exodus, a developer of non-custodial software, debuted on the NYSE under the ticker EXOD, achieving an impressive 36% growth during its first trading session. The company's market capitalization reached $1.4 billion. #Exodus#NYSE#software#growth#debut#trading#capitalization#market#stocks#investments

Venture Village Wall 🦄

@venturevillagewall · Post #3592 · 20.12.2024 г., 13:00

First Combined Bitcoin-Ethereum ETFs Approved ✅ The SEC has approved the first combined spot ETFs for Bitcoin and Ethereum from Hashdex and Franklin Templeton. Asset allocation will be based on market capitalization, with Bloomberg analysts projecting a weight of approximately 80% Bitcoin and 20% Ethereum, reflecting current asset evaluations. Read more #SEC#ETF#Bitcoin#Ethereum#Hashdex#FranklinTempleton#Bloomberg#Crypto#Finance#Investment#Market#Assets#Approval#SpotETFs#Capitalization#Trading#AssetsAllocation#Investing#DigitalAssets#InvestmentStrategy

Venture Village Wall 🦄

@venturevillagewall · Post #3442 · 19.12.2024 г., 10:59

Investors Eye Russian M&A Boom Investment activity in Russia is on the rise, with a surge in mergers and acquisitions along with simplified IPO processes. Founders are encouraged to connect with key strategists and investors to navigate these opportunities effectively. Notably, investor Alexander Radionov, owner of M&A boutique and foodtech companies Broniboy and Bumеrang, shares insights on capital growth and successful exits on his channel. He monitors promising projects and organizes events for founders to facilitate company sales ripe for exit. Explore his channel for valuable resources on capitalization growth and exit strategies. #Investment#M&A #IPO#Russia#BusinessGrowth#ExitStrategies#FoodTech#AlexanderRadionov#Broniboy#Bumeеrang#Capitalization#InvestorConnections#Mergers#Acquisitions#PrivateEquity#Entrepreneurship#Growth#Success#BusinessSales#MarketTrends