sel*_*ape 3 python type-hinting pycharm python-2.7 python-3.x
假设我想向我的 python2/3 代码添加类型提示。在 Pycharm 中最简单的方法是什么?
除了 Pycharms 自己的类型推断之外,它如何帮助我编写类型提示?
基本假设是您自己编写类型。
类型旨在编码您希望代码含义的内容。虽然程序通常可以合理地推断人类意图,但归根结底,一些人为干预始终是必要的。
(毕竟,如果一个程序推导出一组恰好与您的程序匹配的类型,但由于代码中的错误而最终完全错误怎么办?或者如果您打算让函数返回一个Iterable[str]但程序推导出来,会发生什么List[str], 或相反亦然?)
也就是说,有些程序(例如pytype)会尝试自动为您推断类型。然而,我的理解是,这些类型的程序仍在大力开发中,还无法处理所有情况。
如果您只想要存根,但不关心它们是否准确/包含有用的类型注释(也许您计划稍后编辑注释?),请使用“stubgen”,这是一个命令行实用程序,默认情况下捆绑在一起安装mypy。
但在一般情况下,我建议手动添加类型注释(也许从最常用的文件开始),并尝试使用像 Stubgen 或 pytype 这样有意义的辅助工具。