julia - 如何将元组作为函数参数传递

标签 julia

得到了一个带有三个参数的函数。

f(a, b, c) = # do stuff


还有另一个返回元组的函数。

g() = (1, 2, 3)


如何将元组作为函数参数传递?

f(g()) # ERROR

最佳答案

使用Nanashi的示例,提示是调用f(g())时的错误

julia> g() = (1, 2, 3)
g (generic function with 1 method)

julia> f(a, b, c) = +(a, b, c)
f (generic function with 1 method)

julia> g()
(1,2,3)

julia> f(g())
ERROR: no method f((Int64,Int64,Int64))


这表明这将元组(1, 2, 3)作为f的输入,而没有将其拆包。要打开包装,请使用省略号。

julia> f(g()...)
6


Julia手册中的相关部分位于:http://julia.readthedocs.org/en/latest/manual/functions/#varargs-functions

关于julia - 如何将元组作为函数参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22873478/

相关文章:

machine-learning - 如何将字典提供给 Julia 中的 Flux 模型

julia - Flux 的自定义渐变而不是使用 Zygote A.D

arrays - Julia 中的元素明智减法

python - 将 Julia 数据框转换为 Python Pandas 数据框

jupyter-notebook - 我们如何在 Julia 中将一组 Unicode 值转换回它的文本形式?

julia - Gadfly 条形图中条形图周围的轮廓

julia - 如何在 Julia 中对数字进行因式分解?

julia - Julia 中的列表推导和元组

function - 有没有办法在 julia 中深度复制函数?

julia - Julia中“==”和“===”比较运算符有什么区别?