Julia:使用维数组调用Array()

Mag*_*eek 6 julia

假设我想创建一个多维数组,其每个维度的维度/大小在数组中指定.我想做这样的事情:

dims = [2,5,6] # random example, the idea is I don't know dims ahead of time
arr = Array(Float64, dims)
Run Code Online (Sandbox Code Playgroud)

这是不允许的.在上述情况下,应使用:

arr = Array(Float64, dims[1], dims[2], dims[3] )
Run Code Online (Sandbox Code Playgroud)

我不知道提前的长度,所以上述解决方案对我不起作用.除了使用一些讨厌的sprintfs和eval之外,还有一个干净的解决方法吗?

谢谢!

one*_*ute 10

在Julia中记住一个非常有用的操作符是"splat" ....在这种情况下,您只需要:

arr = Array(Float64, dims...)
Run Code Online (Sandbox Code Playgroud)