有没有办法给R函数一个命名输入参数序列(其中名称未在函数定义中指定)并将该序列捕获为命名列表,类似于python的*kwargs?例如:f(first=1, second=2)将在其正文中捕获并使用一个列表(第一个= 1,第二个= 2); 但 f(third=3, fourth=4, fifth=5)会使用一个列表(第三个= 3,第四个= 4,第五个= 5).当然可以将列表本身作为参数传递.这里的好处是易于使用.
为此您可以使用...,例如:
spam = function(a, b, ...) {
dots = list(...)
dots['c']
}
spam(1, 2, c = 3)
# $c
# [1] 3
Run Code Online (Sandbox Code Playgroud)