在 Lua 中将索引 table 转换为键控 table
Converting indexed table to keyed table in Lua
我是 Lua 的新手。
我想知道如何将索引 table 转换为基于键的 table。
例如,假设我有以下 table.
t = {5, 6, 7, 8}
现在,我明白了t[1]
是5,t[2]
是6,t[3]
是7,t[4]
是8。
如何将table t
转换为以下基于键的样式? (无需重新构建 table)
t = {x=5, y=6, z=7, w=8}
最简单、最高效的解决方案是什么?
试试这个代码:
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
我是 Lua 的新手。
我想知道如何将索引 table 转换为基于键的 table。
例如,假设我有以下 table.
t = {5, 6, 7, 8}
现在,我明白了t[1]
是5,t[2]
是6,t[3]
是7,t[4]
是8。
如何将table t
转换为以下基于键的样式? (无需重新构建 table)
t = {x=5, y=6, z=7, w=8}
最简单、最高效的解决方案是什么?
试试这个代码:
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