加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

打印lua中的table

发布时间:2020-12-14 22:16:05 所属栏目:大数据 来源:网络整理
导读:好像很多人都写过这样的代码,我是今天确实需求这样的功能才想到要写一个,一开始感觉应该不是很难,结果写了下发现原来没有那么容易,搜了下,看到了云风写的一个,不过他是树形打印出来,大家可以看这里 http://blog.codingnow.com/2009/05/print_r.html

好像很多人都写过这样的代码,我是今天确实需求这样的功能才想到要写一个,一开始感觉应该不是很难,结果写了下发现原来没有那么容易,搜了下,看到了云风写的一个,不过他是树形打印出来,大家可以看这里 http://blog.codingnow.com/2009/05/print_r.html 我觉得不够优美,还是按照大家写 lua 的 table 的习惯来打印才比较优美,比如


local a = {
    tbNum = {1,2,3,4},tbItemInfo = {
        [1] = { 50,{2,1,5},0 },},["aaaaaaa"] = {"fadsfasdf",{1}},}


这样的table,如果打印出来应该是这样的效果:


代码在这里:


打印 lua 的 table


学习云风大侠的作风,讲一下难点,一个是注意缩进的 upvalue 的运用,另一个是要记得处理 table 最后一个大括号以及逗号的打印。


这样打印出来的 table 完全符合 lua 的语法规范,可以直接复制进去供 lua 调用,同时略加修改,把 print 的地方用字符串拼接起来其实就是把一个 lua table序列化的过程,我也是这么用的,但愿对大家有帮助。


目前还不支持 key 为 table,因为是自己还没想好如果 key 是 table 的时候怎么打印出来比较优美。找到了方法就加上。但愿不要跟以前一样,一放下就忘了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读