我试图找到一个简单的解决方案来了解有多少参数将用户输入到Python函数的* args中但无济于事。所以我想在这里问专家会更快。
说:
def foo(*args):
for arg in args:
print "we have:", arg
那么有没有办法知道如果用户确实foo(1,2,3,4)
我们知道他/她输入了4个参数?
感谢您的关注和帮助!
答案 0 :(得分:3)
使用len
。
In [1]: def foo(*args):
...: print(type(args))
...: print(len(args))
...:
In [2]: foo(1, 2, 3, 4)
<class 'tuple'>
4
可以使用内置函数type
找到args
的类型。
答案 1 :(得分:0)
由于args
可能是序列或集合,因此您只需使用len()
来获取项目数。
def foo(*args):
print "we have", len(args), "args"
答案 2 :(得分:0)
我认为这就像len(args)
一样简单,因为args
只不过是一个元组,所以你也可以应用其他适用于元组的操作。