万能打印函数,可同时打印多表

--[[递归ptable函数]]
function ptable(...)local function pta(t,L)local src,o="",""local L = L or 0  --[[记录递归次数]]local Tab = "\n"..string.rep("\t",L-1) --[[tab空格]]local i = 0         --[[记录for循环次数]]for k,v in pairs(t) doif i > 0 then o = "," endi = i + 1local key,var="",""if type(k) == "string" then key = "[\'"..k.."\'] = " else key = "["..k.."] = " end    --[[显示["key"],注释可隐藏]]if L == 0 then key = "" else key = src .. o .. Tab .. key end --[[初始值不显示Key]]if type(v) == "table" thensrc =  key .. "{" ..pta(v,L+1).. Tab .."}"elseif type(v) == "string" thenvar = "'"..v.."'"elseif type(v) == "number" thenvar = velseif type(v) == "function" thenvar = "function"elseif type(v) == "boolean" thenif v then var = "true" else var = "false" endendsrc = key .. varendif L == 0 thenprint(src) --[[输出]]endendreturn srcendreturn pta({...})  --[[运行]]
endt={{2,a=true,3},{{"nihao"},{{},{}},{3,{111},{222}}},3}
ptable(t,{11111111111111111},{"你好"})  --[[支持多表同时打印,支持打印"boolean"值,支持打印二值化]]

稍微修改可打印二值化表

Lua二值化函数源码

Lua 递归 实现万能输出ptable函数相关推荐

  1. Day05:装饰器,三元表达式,函数的递归,匿名/内置函数,迭代器,模块,开发目录...

    上节课复习: 1.函数的对象     函数可以被当作数据取处理 2.函数嵌套     嵌套调用:在调用一个函数时,函数体代码又调用了其他函数     嵌套定义:在一个函数内部又定义了另一个函数 1 d ...

  2. 浙江大学 PTA 递归实现顺序输出整数

    6-5 递归实现顺序输出整数 (15 point(s)) 本题要求实现一个函数,对一个整数进行按位顺序输出. 函数接口定义: void printdigits( int n ); 函数printdig ...

  3. Lua程序设计 | 字符串、表、函数与IO

    From<Programming in Lua> by Roberto Ierusalimschy 文章目录 字符串 字符串常量 长字符串/多行字符串 强制类型转换 字符串标准库 表 表索 ...

  4. 栈的应用4——递归函数的非递归形式(主讲阿克曼函数的非递归形式)

    递归 函数自己调用自己 如求阶乘函数: int jiecheng(int n) {if(n==0)return 1;if(n==1)return 1;else return n*jiecheng(n- ...

  5. 字符串倒序函数 java_编写将给定字符串倒序输出的函数[Java笔试题]

    面试的过程中经常会出现这样一个问题:写一个函数,将给定的字符串倒叙输出. 以下是StringReverseOpt定义静态方法: public class StringReverseOpt { /** ...

  6. 第十八章 33用重载输出运算符函数实现字符串的输出

    // 33用重载输出运算符函数实现字符串的输出 /*#include <iostream> using namespace std; class String { public:Strin ...

  7. 【Android FFMPEG 开发】FFMPEG 交叉编译配置 ( 下载 | 配置脚本 | 输出路径 | 函数库配置 | 程序配置 | 组件配置 | 编码解码配置 | 交叉编译配置 | 最终脚本 )

    文章目录 一.FFMPEG 源码下载 解压 二.交叉编译工具 三.configure 脚本及帮助命令 四.配置 configure 脚本 五.输出目录配置 六.函数库配置 七.程序配置选项 八.组件配 ...

  8. LUA表 pairs, ipairs输出顺序问题

    LUA表 pairs, ipairs输出顺序问题 t = {[1] = 222,[2] = 23,[3] = 2433,[42] = 135,[5] = 1287,[7] = 7,[102] = 10 ...

  9. 使用C语言将一个数组首尾互换后输出,函数实现体会地址传递

    将一个数组首尾互换后输出,函数实现体会地址传递 小伙伴多多支持,有意见进行评论!(づ ̄3 ̄)づ╭❤- 运行结果: #include<stdio.h> #define N 6 void co ...

  10. C---编写程序:求出1~1000之间能被7或12整除,但不能同时被二者整除的所有整数,将结果保存在数组中,要求程序数据的输入、计算和输出均使用函数实现。

    编写程序:求出1~1000之间能被7或12整除,但不能同时被二者整除的所有整数,将结果保存在数组中,要求程序数据的输入.计算和输出均使用函数实现. 编程思路:分别编写函数input().cal().o ...

最新文章

  1. 人工手动冷备不完全恢复介绍(purge表不完全恢复)
  2. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词
  3. WebSocket+MSE——HTML5 直播技术解析
  4. 上传文件到服务器的Linux命令
  5. MyBatisPlus条件构造器排序方法orderByDesc参数怎样构造
  6. 科大星云诗社动态20210211
  7. easyui打开新的选项卡_IntelliJ IDEA 2020.3 正式版发布,多项超酷新功能
  8. C++xor cipher异或密码算法(附完整源码)
  9. egg.js java 生产数据_eggjs中,自动从数据库直接生成model.
  10. 不断迭代,严苛细节,最终性能如何满足? 基于ELK的大数据平台实践分享
  11. NTFS for Mac支持Mac拷贝文件到硬盘
  12. 查找nginx安装的路径
  13. pycharm 配置设置远程调试【远程解释器】
  14. AppServ 介绍
  15. 分享一套jquery视频教程
  16. python3 unicode_关于你不想知道的所有Python3 unicode特性
  17. Android 接口测方法
  18. excel服务器条形码不显示,excel怎么制作条形码教程 excel条形码显示不出怎么办...
  19. 《C++ Concurrency in Action》笔记
  20. VB 6.0 如何在64位操作系统下运行!

热门文章

  1. 10_心理咨询_微信小程序项目实战_登录页面静态效果实现
  2. 实训日记1:眼部图像的检测与预处理
  3. 年薪30万的web前端都经历过这三个成长阶段!
  4. 别站着编程:站着工作未必对你的健康有好处
  5. 2015,也来总结一下人生
  6. 2021副高考试成绩查询山东省,2021山东省考成绩查询_查询入口
  7. elasticsearch对身份证号码的处理(ngarm分词或者pipeline)
  8. Flask用wtf上传文件
  9. AppXDeploymentServer等文件占满整个C:\Windows\Temp 文件夹的解决方案
  10. 怎样利用scanf()函数自虐