在Python中处理函数时,可以很方便地获取它们的参数名称。假设我们有一个名为 a_method 的函数,定义为:
<code class="python">def a_method(arg1, arg2): pass</code>
要以字符串元组的形式检索参数名称,我们可以利用检查模块。
<code class="python">import inspect inspect.getfullargspec(a_method)</code>
这将返回一个包含参数名称的元组:('arg1', 'arg2')。
检查模块提供了对可调用对象的更多见解。例如,如果函数具有默认参数或接受可变长度参数,则 getfullargspec 函数也将返回有关这些参数的信息。
例如,以下函数具有默认参数和可变长度参数:
<code class="python">def foo(a, b, c=4, *arglist, **keywords): pass</code>
inspect.getfullargspec 将产生:
<code class="python">(['a', 'b', 'c'], 'arglist', 'keywords', (4,))</code>
这个元组表明 c 的默认值为4、arglist用于变长位置参数,keywords用于变长关键字参数。
在Python 3.3及更高版本中,inspect.signature函数可用于获取可调用对象的调用签名,包括参数名称。对于示例函数 foo:
<code class="python">inspect.signature(foo)</code>
这将返回一个 Signature 对象,提供有关函数签名的详细信息。
以上是如何获取Python函数的参数名称?的详细内容。更多信息请关注PHP中文网其他相关文章!