Julia 1.1 x = x + 1 in for循环返回错误

Sho*_*ate 5 julia

我正在使用Julia 1.1,并且尝试使用for循环执行以下简单操作:

i_index=1;
for index in (1:100)
    i_index=i_index+1;
end
Run Code Online (Sandbox Code Playgroud)

但是,我收到一条错误消息:

ERROR: UndefVarError: i_index not defined
Run Code Online (Sandbox Code Playgroud)

我已经尝试了几次和变种,但它们都无法正常工作。这是错误吗?还是为什么朱莉娅不能做这个简单的迭代加法?

Ino*_*led 1

在 REPL 中:

i_index=1;
for index in (1:100)
    global i_index;
    i_index=i_index+1;
end
Run Code Online (Sandbox Code Playgroud)

这是因为变量作用域,请参阅Julia 文档。请注意,其中的示例与 REPL 相关。

  • 我没有,我进入了 Julia 文档并发现了这个:https://docs.julialang.org/en/v1/manual/variables-and-scoping/index.html。我会更改我的答案以反映这一点。 (2认同)