Julia在将全局变量赋值给全局m中的元组时出错,n = size(x);

时间:2017-05-29 05:16:02

标签: julia

我希望全局变量m和n得到第一和第二维尺寸。但它看起来不正确:

julia> x=rand(3,3)
3×3 Array{Float64,2}:
 0.680079  0.929336  0.267358
 0.874437  0.625239  0.804478
 0.92407   0.737254  0.443433

julia> m,n = size(x);
julia> m,n
(3,3)

julia> global m,n = size(x);
julia> m,n
(3,(3,3))

为什么在添加全局关键字时,将2个变量分配给元组的行为会有所不同?

1 个答案:

答案 0 :(得分:3)

似乎将语句拆分为逗号。如果你这样做

x = rand(3,3)
global m,n = size(x)

在一个新的会话中,您将看到m未定义(在您的示例中,它是从之前的语句中定义的)。 globalm从作业中取出,并将结果分配给n

我认为你必须

global m = size(x,1)
global n = size(x,2)