您好我正在尝试使用** kwargs进行pycharm的自动完成工作。为此,我使用epytext语法编写了一个doc字符串,它有一种方法可以用@keyword p:
声明关键字参数,但它不起作用。
有人知道修复它的方法吗?感谢。
P.S。我在PyCharm设置中更改了文档字符串格式。
答案 0 :(得分:0)
如果预先知道关键字参数(并且您希望使用文档字符串来解释它们),则应在函数参数中明确列出它们。然后可以使用常规@param
和@type
语法来描述每个语法。 @keywords
用于描述开发时未知的其余关键字参数。
例如:
class SomeClass:
def __init__(self, some_kw=None, some_kw_1=None, **other_kwargs):
"""
@param some_kw: A known-at-dev-time keyword argument
@type some_kw: str
@param some_kw_1: Another known-at-dev-time keyword argument
@type some_kw_1: str
@keyword other_kwargs: More kwargs that will be set on the instance
"""
self.some_kw = some_kw
self.some_kw_1 = some_kw_1
for k, v in other_kwargs:
setattr(self, k, v)
an_instance = SomeClass(some_kw="hello", other_kw="world")
print an_instance.some_kw
print an_instance.some_kw_1
print an_instance.other_kw
输出
> "hello"
> None
> "world"