我想用更优雅的语法得到以下结果
julia> collect(Iterators.flatten([[(x,y) for y in 1:x] for x in 1:3]))
6-element Array{Tuple{Int64,Int64},1}:
(1, 1)
(2, 1)
(2, 2)
(3, 1)
(3, 2)
(3, 3)
我尝试了类似 [(x,y) for y in 1:x, x in 1:3]
但我得到 ERROR: UndefVarError: x not defined
.
最佳答案
只需像这样颠倒变量的顺序:
julia> [(x,y) for x in 1:3 for y in 1:x]
6-element Array{Tuple{Int64,Int64},1}:
(1, 1)
(2, 1)
(2, 2)
(3, 1)
(3, 2)
(3, 3)
关于arrays - 在 Julia 中构建遍历多个索引的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64857778/