julialang吧 关注:42贴子:71
  • 2回复贴,共1

1.0 ERROR: UndefVarError: variable not defined 解决办法

只看楼主收藏回复

非常**的问题…… 从0.7开始会有错误提示,但对于新入门,或者从0.6上来的萌新,就很懵逼了
看一篇官方的解释帖子:
https://github.com/JuliaLang/julia/issues/28789
很神奇的更新…… 而这一问题仅在交互模式下出现。。
闲话不多说,看代码:
sum=0
x=[1,2,3,4,5]
for i = 1:length(x
sum += x[i]
end
ERROR: UndefVarError: sum not defined
Stacktrace:
[1] top-level scope at ./REPL[11]:3 [inlined]
[2] top-level scope at ./none:0
报错,循环体内无法访问外部变量????
是的,1.0版本的更新…………
解决方法:
for i = 1:length(x
global sum += x[i]
end
其他操作相似,也加个global,或者:
begin
sum=0
x=[1,2,3,4,5]
for i = 1:length(x
sum += x[i]
end
end
也ok
吐槽一下,这对新手非常不友好。。。。


IP属地:广东1楼2018-09-16 00:45回复
    楼主,为啥我用你的第二种方法不行,显示sum未定义??


    IP属地:江苏来自Android客户端2楼2018-11-01 12:47
    收起回复