简而言之,我正在尝试实现以下内容:
def function_one(value):
...
return a, b
def function_two(a, b):
...
当我尝试
function_two(function_one(value))
我收到一条错误消息: “ function_two()缺少1个必需的位置参数:'b'”
有没有办法使这项工作按预期进行? 谢谢!
答案 0 :(得分:5)
您必须将返回的元组解压缩为单独的参数:
rm(list=ls(all=TRUE)[sapply(mget(ls(all=TRUE)), function(x) !is.environment(x))])
另一个选择是更改function_two(*function_one(value))
以接受单个参数,然后将其解压缩到函数中或按原样使用它。这是否一个好主意取决于上下文。