跳转至

Python 模式

此文件使用 Python 特定内容扩展 common/patterns.md。

Protocol(鸭子类型)

from typing import Protocol

class Repository(Protocol):
    def find_by_id(self, id: str) -> dict | None: ...
    def save(self, entity: dict) -> dict: ...

作为 DTO 的 Dataclass

from dataclasses import dataclass

@dataclass
class CreateUserRequest:
    name: str
    email: str
    age: int | None = None

上下文管理器和生成器

  • 使用上下文管理器(with 语句)进行资源管理
  • 使用生成器实现延迟求值和内存高效的迭代

参考

Skill: 在 python-patterns 中可参考包括装饰器、并发处理和包结构在内的全面模式。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 ev/ECC