Lua 在同一个表上调用时设置两个键的值

Lua 在同一个表上调用时设置两个键的值,lua,Lua,我要找的是这样的代码 local sometable = { [1] = [2] = "abc", } 因此,设置两个键肯定是错误的。(返回一个错误)您收到一个错误,因为Lua没有在表构造函数中将多个键设置为单个值的语法 您有几个选项,当使用表作为数组(序列)时,可以省略键: local t = {'abc', 'abc'} 如果不想重复该值,请使用变量: local init = 'abc' local t = {init, init} 或者,编写一个函数进行初始化: local

我要找的是这样的代码

local sometable = {
    [1] = [2] = "abc",
}

因此,设置两个键肯定是错误的。(返回一个错误)

您收到一个错误,因为Lua没有在表构造函数中将多个键设置为单个值的语法

您有几个选项,当使用表作为数组(序列)时,可以省略键:

local t = {'abc', 'abc'}
如果不想重复该值,请使用变量:

local init = 'abc'
local t = {init, init}
或者,编写一个函数进行初始化:

local function initialize(t, v, first, last)
    first = first or 1
    last = last or first
    assert(first <= last, 'invalid first/last')
    for i = first, last do
        t[i] = v
    end
    return t
end

local t = initialize({}, 'abc', 1, 2)
local函数初始化(t,v,first,last)
第一个=第一个或1
最后一个=最后一个或第一个

assert(first
initialize
函数是一个非常简洁的解决方案。