function printTable(tbl, indent)
indent = indent or 0
for key, value in pairs(tbl) do
local formatting = string.rep(" ", indent) .. key .. ": "
if type(value) == "table" then
print(formatting)
printTable(value, indent + 1)
else
print(formatting .. tostring(value))
end
end
end
-- 示例用法
local myTable = {
key1 = "value1",
key2 = {
subkey1 = "subvalue1",
subkey2 = {
subsubkey1 = "subsubvalue1",
subsubkey2 = "subsubvalue2"
}
},
key3 = "value3"
}
printTable(myTable)
这段代码定义了一个printTable函数,该函数接受一个table和一个缩进级别作为参数,然后递归地遍历table中的每个元素,并以树状结构打印输出。你可以根据实际需要修改代码以满足特定的输出格式。
转载请注明出处:http://www.pingtaimeng.com/article/detail/6511/Lua