Lua:指数预期,没有

时间:2014-03-27 17:31:57

标签: lua lua-table

嗯,我对lua很新,今天开始研究这个。所以这是我的代码:

local l = {1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1}

local n = table.getn(l)

local path = {{l[1], 1}}
local index = 1

for i=2,n do    
    if l[i] ~= l[i-1] then
        index = index + 1
        path[index][1] = l[i]
        path[index][2] = 0
    end 
    path[index][2] = path[index][2] + 1 
end

我想要做的是获取路径数组(表),其中零和1应与其后续数量分组。输出应为:

{{1, 1}, {0, 3}, {1, 3}, {0, 8}, {1, 1}}

但问题是我得到了索引,得到了nil 错误:path[index][1] = l[i]这段代码有什么问题?应该增加index并创建path数组中的新项目......但它不是......

1 个答案:

答案 0 :(得分:3)

索引设置为,您尝试索引到位置2的路径,该路径返回nil。然后你试图在零上设置索引1。您需要在路径的索引2处创建一个表。尝试这样做

path[index] = {l[i], 0}