如果需求是“又快又脏”
我发现这个很有用。由于递归,它也可以打印嵌套表。它没有在输出中提供最漂亮的格式,但对于这样一个简单的函数来说,调试起来很难。
function dump(o)
if type(o) == 'table' then
local s = '{ '
for k,v in pairs(o) do
if type(k) ~= 'number' then k = '"'..k..'"' end
s = s .. '['..k..'] = ' .. dump(v) .. ','
end
return s .. '} '
else
return tostring(o)
end
end
e.g.
local people = {
{
name = "Fred",
address = "16 Long Street",
phone = "123456"
},
{
name = "Wilma",
address = "16 Long Street",
phone = "123456"
},
{
name = "Barney",
address = "17 Long Street",
phone = "123457"
}
}
print("People:", dump(people))
产生以下输出:
人员:{ [1] = { [“地址”] = 长街 16 号,[“电话”] =
123456,["姓名"] = Fred,} ,[2] = { ["地址"] = 16 长
街道,["电话"] = 123456,["姓名"] = 威尔玛,} ,[3] = { ["地址"] = 17
长街,[“电话”] = 123457,[“姓名”] = 巴尼,} ,}