[英]How to determine the number of arguments passed to function?
我有一个 function,它采用可变数量的 arguments。 我想(在函数中)获得通过的数字。 声明如下所示:
def function(*args):
function调用如下:
function(arg1, arg2, ...)
您可以如下定义 function 以获得 arguments 的值:
def function(*args):
for i in range(len(args)):
print(args[i])
function(3, 5, 8)
结果如下:
3
5
8
也就是说, args[i]
接收传递给function
的第 i 个参数的值。
要获取传递的参数个数,可以使用签名模块。 例子:
from inspect import signature
def someMethod(self, arg1, kwarg1=None):
pass
sig = (signature(someMethod))
print(len(list(sig.parameters)))
Output:
3
要获取参数的名称,请执行以下操作:
def someMethod(self, arg1, kwarg1=None):
pass
sig = (signature(someMethod))
print(list(sig.parameters))
在这里阅读更多
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.