在Lua中,你可以使用递归的方式来输出树状结构的table。以下是一个简单的示例代码,可以实现这个功能:
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.zyzy.cn/article/detail/6511/Lua