升华3,python函数docstring的代码段,带参数和返回
我想编写一个代码段,将docstring添加到Python函数中: 例如:升华3,python函数docstring的代码段,带参数和返回,python,code-snippets,sublimetext,sublimetext3,Python,Code Snippets,Sublimetext,Sublimetext3,我想编写一个代码段,将docstring添加到Python函数中: 例如: def foo(a): b=a+1 return b 应产生以下结果: def foo(a): """One liner description Parameters ---------- a : type some comment Returns ------- b : type some comment
def foo(a):
b=a+1
return b
应产生以下结果:
def foo(a):
"""One liner description
Parameters
----------
a : type
some comment
Returns
-------
b : type
some comment
"""
b=a+1
return b
我的第一次尝试是这个片段:
<snippet>
<content><![CDATA[
"""${1:One liner description}
Parameters
----------
${2}
Returns
-------
${3}
"""
]]></content>
<tabTrigger>docstring</tabTrigger>
<scope>source.python</scope>
<description>Adds a docstring skeleton to function</description>
</snippet>
如何获取在代码段中自动检测到的参数和返回值,例如示例中的“a”和“b” 只需在每个${}
停止点的
后面添加一个:
:
文档字符串
source.python
将docstring骨架添加到函数
也许字符串替换对您有帮助。下面是一个来自Idle的简短片段来演示语法
>>> a = 123
>>> b = "abc"
>>> "%(a)s, %(b)s" % locals()
'123, abc'
>>> "%d, %s" % (a,b)
'123, abc'
要获取类型,请执行以下操作:
>>> a = 123
>>> type(a)
<type 'int'>
>>> print type(a)
<type 'int'>
>>> type(a).__name__
'int'
>a=123
>>>类型(a)
>>>打印类型(a)
>>>键入(a).\u名称__
“int”
x.\uuuu name\uuuuuuu
是一个私有属性,但它是“可访问的”这误解了我的问题:目的是有一种通用的方法来检测函数的参数和返回,并在代码段中添加相应的条目。这里的a和b只是给出一个例子。好吧,你不能用一个ST代码段来完成所有这些。即使有另一种方法,检测类型也会很困难,特别是对于返回值,因为一个函数可以有多个值。Python函数不能返回多个值。它只能通过返回一个iterable并使用解包将iterable中的每个值分配给相等数量的变量来产生错觉。@e-satis:我知道,但出于文档目的,检测iterable中的值的类型将非常有用,而不仅仅是生成一个通用的“返回序列”。不管怎样,我怀疑ST甚至可能在最简单的情况下也能解决这个问题
>>> a = 123
>>> type(a)
<type 'int'>
>>> print type(a)
<type 'int'>
>>> type(a).__name__
'int'