我知道 CPython 的内置函数是用 C 实现的。但我对内置类型的方法的类型提示或注释感兴趣。
例如,我想知道
set.symmetric_difference_update()
是如何注释的。但我找不到。
似乎内置函数需要类似的类型提示才能使 mypy 等程序正常工作。
您可以在此处
找到
set.symmetric_difference_update()
的注释。
class set(MutableSet[_T], Generic[_T]):
# ...
def symmetric_difference_update(self, s: Iterable[_T]) -> None: ...
以下是 typeshed
存储库的
readme.md文件的一些摘录:
包含 Python 标准库和 Python 内置函数的外部类型注释,以及由这些项目外部人员贡献的第三方包。Typeshed
该数据可以例如用于静态分析、类型检查或类型推断。 [...]
如果您只是使用 mypy(或 pytype 或 PyCharm),而不是开发它,则根本不需要与 typeshed 存储库交互:typeshed 的标准库部分的副本与 mypy 捆绑在一起。