gpt4 book ai didi

python - 如何将空参数传递给python函数?

转载 作者:太空狗 更新时间:2023-10-30 00:29:20 25 4
gpt4 key购买 nike

这是工作代码:

def g(y=10):
return y**2

def f(x,y=10):
return x*g(y)

print(f(5)) #->500

但是,假设我们不想记住和复制关键字参数y 的默认值到外部函数的定义中(特别是如果有多层外部函数)。在上面的示例中,这意味着我们要使用已经在 g 中定义的参数。

一种方法:

def f(x,y=None):
if y==None: return x*g()
else: return x*g(y)

但是有没有更简洁的方法来做同样的事情呢?像这样的东西:

def f(x,y=empty()):
return x*g(y)

最佳答案

有趣的问题!这是另一种可能性,但这需要将第二个参数作为命名参数提交。

>>> def g(y=10):
... return y**2
...
>>> def f(x, **kwargs):
... return x * g(**kwargs)
...
>>> f(5)
500
>>> f(5, y=0)
0

关于python - 如何将空参数传递给python函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36650583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com