【发布时间】:2019-04-01 06:05:26
【问题描述】:
我正在使用 Julia 1.1,并尝试使用 for 循环执行以下简单操作:
i_index=1;
for index in (1:100)
i_index=i_index+1;
end
但是,我收到一条错误消息:
ERROR: UndefVarError: i_index not defined
我已经尝试了几次和变体,但它们都失败了。这是一个错误吗?或者为什么 Julia 不能做这个简单的迭代加法?
【问题讨论】:
-
看这个帖子:stackoverflow.com/questions/52396269/…我假设你需要添加
global,像这样:global i_index=i_index+1; -
@SebastianKaczmarek 谢谢。但是你能解释一下吗? (我什至没有定义一个函数,而只使用了一个 for 循环......)那个“全局”来自哪里?
-
因为您没有定义函数,所以您在全局范围内工作,因此,您在全局范围内定义了
i_index,因此您需要使用global访问它。在函数中,您的代码将按原样工作 -
正确,但不是 environment 您应该将其称为 scope,这是可以看到变量的代码块
-
While without global的可能重复
标签: julia