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

Резултати

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

Пребарај: #vultr

当前筛选 #vultr清除筛选
口袋银河

@GalaxyPocket · Post #35 · 09.03.2023 г., 18:02

Vultr Free Tier 项目的第一批申请正在陆续批准 3 月 7 日,Vultr 在其网站上宣布[1]将“提供完全免费的高性能云虚拟机”,即 Vultr Free Tier 项目[2]。该项目承诺将提供 1 vCPU, 0.5GB 内存、10GB 本地存储和额外的 2TB 出站流量。申请参与 Vultr Free Tier 项目需要一个 Vultr 帐户、充值最低金额且开启两步验证。 近日不少网友[DP1, 2, 3, 4, 5]收到 Vultr 的邮件,告知其已通过 Vultr Free Tier 项目的申请,且具体内容需要登录 https://my.vultr.com/settings/#settingsfreetier 查看。 从该页面显示的信息来看,Vultr Free Tier 项目目前有效期只有一年(自通过日期开始计算的一年),且每次只能启动一台免费实例;该实例可在控制台被关闭并重新引导,但每月仅能够在控制台重新引导两次。 启动免费实例的步骤为: 1. 访问 https://my.vultr.com/deploy/ 部署新实例; 2. 选择第二项 Cloud Compute 云计算实例; 3. 选择第四项 Intel(R) Regular Performance 常规性能的 Intel 实例; 4. 选择提供免费实例的地域 (Server Location); 5. 选择提供免费实例的系统镜像 (Server Image); 6. 选择服务器尺寸 (Server Size) 为 Free Tier; 7. 单击右下角的 Deploy Now. 免费实例可以被分配到一个免费的 IPv4 地址; 目前仅迈阿密 (Miami, US)、西雅图 (Seattle, US) 和法兰克福 (Frankfurt, DE) 共 3 个地域提供免费实例; 目前除 Arch Linux, Ubuntu, Windows Core Standard 和 Windows Standard 外的系统镜像均可供部署免费实例。 [1] https://www.vultr.com/news/new-free-tier-plan/ [2] https://www.vultr.com/free-tier-program/ #Vultr#免费

Host Testing and evaluation

@HostEvaluate · Post #858 · 26.01.2023 г., 13:15

#Vultr#JP#KIX Host Provider: Vultr Location: Osaka, Japan Specification: 1vCore | 1GB RAM | 25GB NVMe | 2T | $6 / Mo Looking glass: osk-jp-ping.vultr.com 一份匿名投稿。vultr 新增加了大阪 pop, 目前有 AMD High Performance 和 Intel High Performance. 两个都是 Hyper-V 虚拟化。就跑分来看 AMD 的性能会好些。联通回程 telia 绕欧洲,电信回程 pccw 绕美,移动回程绕美 telia。这延迟可以告别大陆使用了 。 AMD: https://paste.red/p/310758d422a2 Intel: https://paste.red/p/59cb52c2cc57

Host Testing and evaluation

@HostEvaluate · Post #851 · 11.12.2022 г., 02:14

#Vultr#ZA#JNB Host Provider: Vultr Location: Johannesburg, South Africa Specification: 1vCore (EPYC-Rome) | 1GB RAM | 25GB NVME | 2TB @ 1Gbps | $6 / Mo Looking glass: jnb-za-ping.vultr.com 上游提供商为 Cogent + PCCWG,接入 NAPAfrica IX 国内延迟普遍较高 (400ms+),上海 CN2 / 9929 (~350ms) https://paste.red/p/5ba1efe5f4ec