擅长:python、mysql、java
<p>我想你在找<a href="http://docs.python.org/library/inspect.html#inspect.getargspec">inspect.getargspec</a>:</p>
<pre><code>import inspect
def thefunction(a=1,b=2,c=3):
pass
argspec = inspect.getargspec(thefunction)
print(argspec.args)
</code></pre>
<p>收益率</p>
^{pr2}$
<hr/>
<p>如果函数同时包含位置参数和关键字参数,则查找关键字参数的名称会比较复杂,但不会太难:</p>
<pre><code>def thefunction(pos1, pos2, a=1,b=2,c=3, *args, **kwargs):
pass
argspec = inspect.getargspec(thefunction)
print(argspec)
# ArgSpec(args=['pos1', 'pos2', 'a', 'b', 'c'], varargs='args', keywords='kwargs', defaults=(1, 2, 3))
print(argspec.args)
# ['pos1', 'pos2', 'a', 'b', 'c']
print(argspec.args[-len(argspec.defaults):])
# ['a', 'b', 'c']
</code></pre>