我是 Julia 及其语法的完全菜鸟。我正在尝试关注 this关于 Julia 半定规划的文章。
如果有人能帮我弄清楚 In[4]
中的 for 循环实际上做了什么,我将不胜感激:
for i in 1:m
A[:, (i-1)*n+1:i*n] .= random_mat_create(n)
b[i] = tr(A[:, (i-1)*n+1:i*n]*X_test)
end
根据我的理解,它应该创建一个矩阵向量 A
(其中 m 个)以及一个 m 维向量 b
。我对 A
的索引和 b
的索引完全感到困惑。
我想要解释 :, (i-1)*n+1:i*n
这段代码的一部分 .我在这里问的原因是因为我也不知道要谷歌什么或在 Julia 文档中搜索什么。
最佳答案
(i-1)*n+1:i*n
创建从 (i-1)*n + 1
到 i*n 的范围
。例如,如果 i
=2 且 n
=10,则此范围变为 11:20
,因此 A[:, (i -1)*n+1:i*n]
将获取 A
的所有行(这就是 :
所做的)和第 11-20 列。
关于for-loop - Julia 中的 For 循环。语法困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65414458/