gpt4 book ai didi

python - 将函数参数名称传递给Python中的另一个函数

转载 作者:行者123 更新时间:2023-11-28 21:39:41 25 4
gpt4 key购买 nike

给定一个简单的函数:

def A(a = 1, b = 2):
return a+b

我想编写另一个函数来更改ab 的默认参数值。用户可以通过设置 var = avar = b 来指定要更改的参数。例如:

def B(var = 'a', new_value = 10):
temp_dict = {var:new_value}
ans = A(var)
return ans

def B(var = 'a', new_value = 10):
ans = A(var = new_value)
return ans

在函数 def B() 中,设置 var = avar = new_value = 10 后,我期望 A( var = new_value) 实现与 A(a = 10) 相同的效果。你知道函数def B()的正确写法吗?谢谢。

最佳答案

你快到了。从您的 B() 函数调用 A() 时,您需要解压 temp_dict 并将其作为参数传递给A()。见下文:

>>> def A(a = 1, b = 2):
... return a+b
...

>>> def B(var = 'a', new_value = 10):
... temp_dict = {var:new_value}
... ans = A(**temp_dict)
# ^ unpack the dict, and pass it as an argument
... return ans
...

>>> B()
12

有关此 ** 如何与 dict 一起工作的更多详细信息,请查看:

关于python - 将函数参数名称传递给Python中的另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46454600/

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