python - Python 等价于 R's ... 用于匹配函数参数
问题描述
在 R 中,您可以在定义函数时使用特殊参数...
,如下所述:
这个参数将匹配任何没有匹配的参数,并且可以很容易地传递给其他函数。如果您想收集参数以调用另一个函数,但您不想预先指定它们的可能名称,这很有用。
这意味着如果我编写一个在a
其中使用另一个函数的函数b
,我不需要包含所有可能的参数b
作为参数a
来使用它们。
在 Python 中,有什么等价的吗?
解决方案
我相信,没有单一的构造,但*
和**
参数的组合也是如此。
def g(x, y, z):
return x + y + z
def f(x, *args, **kwargs):
print(x)
print(args)
print(kwargs)
print(g(*args, **kwargs))
f(9, 1, 2, z=3)
生产
9
(1, 2)
{'z': 3}
6
作为输出。
推荐阅读
- r - 了解 lapply 和 future.apply 以获得更快的循环?
- python - 如何在 MySQL 中更新 django 数据库模型?
- sql - Postgres - 如何修复 LATERAL 查询错误
- java - Spark Java中的内部连接
- ruby-on-rails - 如何将本地存储(活动存储)迁移到谷歌云存储
- python - Docker 中的 Tensorflow GPU“SSE4.1 指令”问题
- arrays - jq - 选择与正则表达式匹配的键的所有非空唯一值
- r - 如何使用 r 中另一个数据帧中的已知公式填充 NA 值
- web-component - 无法使用 vue-cli 和 vue3 创建 Web 组件
- symfony - Symfony - PHPUnit Prophecy 不会触发调用