我是Lua的新手,想要打印表的内容以进行调试。我可以通过自己迭代表来做到这一点。然而,由于这是一个非常普遍的问题,我希望必须有一个开箱即用的方式,或者有人必须编写一个很好的库来做到这一点。在Lua中这样做的标准方法是什么?
答案 0 :(得分:3)
这是表序列化的一般问题的一个实例。
看看at the Table Serialization page at lua-users进行一些严肃的实施。
我对它的抛出通常很快就会定义像
这样的函数function lt(t) for k,v in pairs(t) do print(k,v) end end
答案 1 :(得分:3)
无论好坏,都没有标准。 Lua以其所包含的内容而闻名。它没有对正确的字符串表示做出假设,因为没有一种真正的方法来处理格式,嵌套表,函数表示或表循环等事情。话虽如此,从“包含电池”的Lua库开始并没有什么坏处。也许考虑Penlight。它的pl.pretty.write可以解决问题。
答案 2 :(得分:1)
请参阅https://github.com/rimar/lua-reactor-light/blob/master/util.lua中的table.print,它可能是从lualogging库中借来的