在Julia中是否有来自Python的*args的等效命令?我问,因为我正在尝试编写一个数值积分函数,其参数是一个可能依赖于几个常量的函数.例如,如果我的Julia功能是
function func(x,a,b)
return a*x + b
end
Run Code Online (Sandbox Code Playgroud)
是否可以制作阵列
args = [a,b]
并将此函数称为
val = func(x,*args)?
这在朱莉娅很容易....在函数定义中放置最后一个参数后,它会接受作为元组传递的任意数量的参数:
function func(x,args...)
result = zero(x*args[1])
for (i,arg) in enumerate(args)
result += arg * x^(length(args) - i)
end
result
end
Run Code Online (Sandbox Code Playgroud)
你可以用任何一种方式调用它:
args = [a, b]
val = func(x, args...)
# or
val = func(x, a, b)
Run Code Online (Sandbox Code Playgroud)