我们如何为以下功能实施?
对于可选参数和命名参数,我们按以下方式编写函数。
def funct(*args, **kwargs):
for arg in args:
print “arg =”, arg
for key in kwargs.keys():
print “arg[{0}]={1}”.format(key, kwargs[key])
如果我想在同一协议的另一个函数中调用此函数,我该如何实现?
def funct2(*args, **kwargs):
# call funct() above
funct(????????)
那么有没有办法用新的funct()
中的可选参数调用带有可选参数的第一个funct2()
并使用相同类型的可选参数?
答案 0 :(得分:1)
调用函数的语法与定义函数时的语法基本相同。所以你的funct2
看起来像是:
def funct2(*args, **kwargs):
# call funct() above
funct(*args, **kwargs)
以下是涵盖主题的Python文档:https://docs.python.org/2/tutorial/controlflow.html#unpacking-argument-lists