(可选)通过 kwargs 将值传递给具有默认参数的内部函数

Optionally passing values via kwargs to inner functions with default parameters

提问人:tmldwn 提问时间:11/30/2022 更新时间:11/30/2022 访问量:54

问:

我有一个调用两个内部函数的外部函数,以及 .每个内部函数(条形图)都有默认参数。我希望能够调用 foo 并指定我想要的任何参数,然后对我未指定的参数使用内部函数默认值。我该怎么做?foobar1bar2

例:

def foo(**kwargs):
    print(bar1(kwargs['b1p1'], kwargs['b1p2'])
          + bar2(kwargs['b2p1'], kwargs['b2p2']))

def bar1(b1p1 = '', b1p2 = ''):
    return str(b1p1+b1p2)

def bar2(b2p1 = 0, b2p2 = 0):
    return str(b2p1 * b2p2)

foo(b1p1 = 'a', b1p2='b', b2p1 = 1, b2p2 = 3) #returns ab3
foo(b1p1 = 'a') #should return  a0
foo() #should return 0
python 关键字 默认值参数

评论


答: 暂无答案