lua - 在表中动态构建子表
问题描述
我试图弄清楚如何在 lua 表中动态构建一系列子表。例如
function BuildsubTable()
local oTable = {}
local name = {"P1","P2"}
for i = 1, 2 do
oTable[i] = {name = name[i], "x" = i + 2, "y" = i + 1}
end
return oTable
end
预期输出:
oTable = {
{name = "P1", "x"=3, "y"=2},
{name = "P2", "x"=4, "y"=3}
}
这显然是行不通的,但你明白我想要做什么。这是一个相当简单的任务,但在 LUA 5.3 中这被证明是困难的。我找不到以这种方式构建表格的好例子。任何解决方案或其他想法将不胜感激。在 Python 中,我会使用一个类或一个简单的字典。
解决方案
利用
oTable[i] = {name = name[i], x = i + 2, y = i + 1}