首页 > 解决方案 > 在表中动态构建子表

问题描述

我试图弄清楚如何在 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 中,我会使用一个类或一个简单的字典。

标签: lua

解决方案


利用

oTable[i] = {name = name[i], x = i + 2, y = i + 1}

推荐阅读