Lua: 预期索引,但得到了空值。

好的,我对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}, {0, 3}, {1, 3}, {0, 8}, {1, 1}}

但问题是我在行 path[index][1] = l[i] 中收到了 期望索引,得到nil 的错误。这段代码有什么问题? index 应该被递增并创建 path 数组中的新项目... 但它并没有...

点赞
用户98917
用户98917

你尝试将 Index 设置为 to 并且在路径的位置2进行索引,结果返回了 nil。接着,你又尝试将索引1设置在 nil 上。你需要在路径的 Index 2 处创建一个表。尝试执行以下操作:

path[index] = {l[i], 0}
2014-03-27 17:41:38