all*_*ool 10 python types docstring pycharm
我总是在函数定义中使用类型提示,例如:
def foo(a: int, b: str) -> bool:
pass
Run Code Online (Sandbox Code Playgroud)
当我使用 PyCharm 自动文档字符串生成器在我的代码中生成文档字符串时,我得到了这个:
def foo(a: int, b: str) -> bool:
"""
:param a:
:type a:
:param b:
:type b:
"""
pass
Run Code Online (Sandbox Code Playgroud)
如您所见,我在函数本身中定义的类型值没有被 PyCharm 识别,我应该再次将它们写在 docstring 中。我如何让 PyCharm 为我自动生成这样的东西(从第一行读取类型值并将它们插入到文档字符串中):
def foo(a: int, b: str) -> bool:
"""
:param a:
:type a: int
:param b:
:type b: str
:rtype: bool
"""
pass
Run Code Online (Sandbox Code Playgroud)
PyCharm Bugtracker 上有一个功能请求:根据现有的内联注释生成文档字符串类型
截至 2020 年底,PyCharm 似乎仍然不支持将方法中的类型信息自动添加到文档字符串中。
功能请求中有一条评论询问为什么需要这样的功能:
下面的每个人都有一个问题,为什么需要在注释和文档字符串中添加类型提示?PyCharm 仅部分支持后一种格式(并非所有可能的 PEP 484 类型提示都能被理解,请参阅 PY-23400),并且大多数其他类型检查器根本无法识别。另一方面,注释中的类型提示已经在快速文档和 Sphinx 呈现的文档中正确显示(可能在 sphinx-autodoc-typehints 的帮助下)。
Esk*_*app -2
去Settings -> Editor -> Intentions。在那里,在类别下Python,勾选方框Specify type for reference in docstring。
一旦激活,您就可以使用调试器及其功能:Insert documentation string stub填充函数的文档字符串。(请注意,您需要激活Collect runtime information for code insight位于的选项Settings -> Build, Execution, Deployment -> Python Debugger)
该过程的细节有点长,所以我将提供有关此内容的官方 PyCharm 教程的链接:https://www.jetbrains.com/help/pycharm/using-docstrings-to-specify-types.html