Mar*_*lka 11 python pydoc pycharm
在Pycharm中,我希望有一个记录的函数,它返回一个元组,以便我可以在其上获得代码.评论的风格是谷歌风格.
这工作正常:
def func():
"""
Returns:
str: something
"""
pass
Run Code Online (Sandbox Code Playgroud)
func().正确键入显示方法str.
然而,键入此不工作了:
def func():
"""
Returns:
(int, str): something
"""
pass
a, b = func()
Run Code Online (Sandbox Code Playgroud)
打字b.不提供任何东西.
我知道PyCharm能够解析元组,因为这段代码有效:
def func():
"""
:rtype: (int, str)
"""
pass
a, b = func()
Run Code Online (Sandbox Code Playgroud)
但是,这不符合谷歌的风格.
如何根据标准记录函数,以便Pycharm接收返回类型?
我是这样做的:
from typing import Tuple
def func() -> Tuple[int, str]:
""" (...)
Returns:
A tuple containing, respectively, an int (<meaning of the
returned int>) and a string (<meaning of the returned string>).
"""
Run Code Online (Sandbox Code Playgroud)
PyCharm(和 Sphinx,如果您使用它来解析文档字符串)将正确地知道函数的返回类型,并且您将获得函数返回值的清晰且漂亮的描述。
小智 0
来自 sphinxcontrib 的文档页面
该
Returns部分支持任何 reStructuredText 格式,
包括文字块::Run Code Online (Sandbox Code Playgroud){ 'param1': param1, 'param2': param2 }
这表示 Google 样式支持内部的 reStructuredText 格式,并且使用以下格式会返回元组自动完成选项。
def func():
"""
Returns:
:rtype: (int, str)
"""
pass
a, b = func()
Run Code Online (Sandbox Code Playgroud)
这是您正在寻找的解决方案吗?