python - 如何迭代具有不同数量参数的函数
问题描述
我想迭代存储在字典中的许多函数:
function_dict = {'func_a': partial(func_a),
'func_b': partial(func_b)}
为简单起见,假设这些功能是:
def func_a(x,y):
return x + y
def func_b(x):
return x**2
事实上,这些函数是外部库的一部分,所以我无法修改它们。
我希望能够遍历所有这些。但是,在接收 1func_a
个参数时func_b
接收 2 个参数。
我想做以下事情:
x = 2
y = 5
for key, func in function_dict.items():
if (key=='func_a'):
print( (func)(x,y) )
if (key=='func_b'):
print( (func)(x) )
产生
7
4
在这个循环中,我使用了 if 语句来查看即将出现的函数并使用适当数量的参数。但是如果function_dict
.
我怎样才能标准化它,以便我可以遍历字典中的所有函数并为每个函数选择正确数量的参数?
提前谢谢了。
解决方案
推荐阅读
- r - 使用 data.table 粘贴列时如何忽略 NA?
- python - 如何将更改/更新数据传递到另一个弹出窗口?
- gzip - 如何在 C++ 中将 .json 文件压缩成 .json.gz 文件格式?
- sql - PostgreSQL 中 DATEADD 的等价物?
- php - 发布请求后我的会话被破坏
- android - 如何在android项目中使用不同的google-services.json文件添加不同风格的相同应用程序(想要克隆应用程序)?
- excel - 如果没有找到结果如何停止处理
- java - RedisHttpSession 正在为来自同一浏览器的请求创建不同的 sessionId
- powershell - 在 powershell 脚本中捕获错误
- android - 广播接收器无法正常工作