Lua中将索引表转换为键值表的方法

我是Lua的初学者。

我想知道如何将索引表转换为基于键的表。

例如,假设我有以下表格。

t = {5, 6, 7, 8}

现在,我知道t [1]是5,t [2]是6,t [3]是7,t [4]是8。

我应该怎么做才能将表t转换为以下基于键的样式? (不重新构造表格)

t = {x = 5,y = 6,z = 7,w = 8}

最简单且最有效的解决方案是什么?

点赞
用户107090
用户107090

尝试这段代码:

t = {5, 6, 7, 8}
f = {"x", "y", "z", "w"}

for k=1,#t do
    t[f[k]]=t[k]
    t[k]=nil
end

for k,v in pairs(t) do
    print(k,v)
end
2018-07-10 15:25:23