定义Python函数任意数量的参数

你可能已经知道了Python允许你定义可选参数。但还有一个方法,可以定义函数任意数量的参数。

首先,看下面是一个只定义可选参数的例子

复制代码
def function(arg1="",arg2=""):

print "arg1: {0}".format(arg1) 

print "arg2: {0}".format(arg2) 

function(“Hello”, “World”)

prints args1: Hello

prints args2: World

function()

prints args1:

prints args2:

复制代码

现在,让我们看看怎么定义一个可以接受任意参数的函数。我们利用元组来实现。

复制代码
def foo(args): # just use "" to collect all remaining arguments into a tuple

numargs = len(args) 

print "Number of arguments: {0}".format(numargs) 

for i, x in enumerate(args): 

    print "Argument {0} is: {1}".format(i,x) 

foo()

Number of arguments: 0

foo(“hello”)

Number of arguments: 1

Argument 0 is: hello

foo(“hello”,“World”,“Again”)

Number of arguments: 3

Argument 0 is: hello

Argument 1 is: World

Argument 2 is: Again

你可能感兴趣的:(定义Python函数任意数量的参数)