Julia查找迭代值的索引

时间:2015-03-16 18:14:21

标签: indexing iterator julia built-in

我试图在for循环中找到数组中项目的索引,该循环在数组中从一个项目到另一个项目。是否有内置功能允许我这样做?

dim = 3
length = 10

arrayTuple = fill!(Array(Int64, dim),length)
# [10,10,10]

Arr = fill!(Array(Int64,tuple(arrayTuple...)),1)

for item in Arr
    #print the index of node into array here
end

1 个答案:

答案 0 :(得分:8)

IIUC,您可以使用enumerate

julia> for (i, item) in enumerate(Arr[1:5])
           println(i, " ", item)
       end
1 1
2 1
3 1
4 1
5 1

如果您需要多维版本,可以使用eachindex代替:

julia> for i in eachindex(a)
           println(i, " ", a[i])
       end
Base.IteratorsMD.CartesianIndex_3(1,1,1) 1.0
Base.IteratorsMD.CartesianIndex_3(2,1,1) 1.0
Base.IteratorsMD.CartesianIndex_3(3,1,1) 1.0
Base.IteratorsMD.CartesianIndex_3(1,2,1) 1.0
[... and so on]