typing_extensions 模块有两个相关目的:
- 允许在旧版 Python 中使用新的类型系统功能。例如,
typing.TypeGuard是 Python 3.10 中的新功能,而typing_extensions允许 在之前的 Python 版本中使用的用户也能使用它。 - 允许在新的类型系统 PEP 被接受并添加到
typing模块之前进行实验。
会被 mypy 和 pyright 等静态类型检查器特殊对待。
在 typing_extensionstyping_extensions 中定义的对��,其处理方式与 typing 中的等效形式相同。
使用
语义化版本控制。主版本号仅在发生不兼容更改时才会递增。
因此,可以将 typing_extensionstyping_extensions 依赖项指定为: typing_extensions ~=x.y,
其中 x.y 是包含您所需所有功能的第一个版本。
这
等同于 typing_extensions >=x.y, <(x+1)。除非您真的知道自己在做什么,否则不要依赖 ~= x.y.z,
这会违背语义化版本控制的初衷。
有关模块内容的完整列表,请参阅 文档。
有关如何贡献 typing_extensions 的信息,请参阅 CONTRIBUTING.md。