假设我有一个函数
def my_func(a,b,c):
return a+b+c
我只能通过字符串调用它:
eval("my_func")
假设我有一个对应参数的字典:
parm = {'a':1,'b':2,'c':3}
如何将它传递给 eval("my_func")
?我知道你可以这样做:
eval("my_func")(parm['a'],parm['b'],parm['c'])
但是如果这不是一个通用的解决方案,因为当函数发生变化时(即一个函数有 2 个参数而不是 3 个参数)它就不会工作。
有什么想法吗?
最佳答案
正如其他人评论的那样,这就是您想要的:
>>> eval("my_func")(**parm)
6
关于python - 参数匹配 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34057888/