[lua]紫猫lua教程-命令宝典-L1-01-03. 数值数据
lua5.3在线手册地址 https://cloudwu.github.io/lua53doc/contents.html#contents 其实我们直接啃手册就够了 推荐如果有基础的先啃手册再看紫猫教程 能节约很多时间
L1[数值]01. 数值写法
小知识:zeroBrance studio工具配置紫猫老师的函数 可以实现按键下的traceprint的基本功能
1.可以显示reaceprint 触发所在的文件名 行数 和 调试的内容
2.在反馈信息区域双击该条反馈 可以快速的跳转到对应的traceprint的位置 还是挺好用的
3 只限于在zeroBrance studio 配合紫猫的traceprint函数
4 traceprint 和print一样都支持 print(x,y,z) 可以同时输出多个各种类型变量 traceprint(10^2,11,23,432,45345,12,"|",34)
function traceprint(...)
local info = debug.getinfo(2)
local line = string.format("%s:%d:", info.source:match(".*\\([^\\]*)"), info.currentline)
print(line, ...)
end
使用注意:文件名尽量不要用中文 lua下尽量用英文 如果用了中文 会出现一些意外 比如上面的双击traceprint跳转到位置会失效 真的要学好英文了 我的天哪

小知识:lua下的数值的各种表示形态
1.整数 小数 3 3.1415926 之类的
2.科学计数法 0.314e1=3.14
3十六进制 0x traceprint(0x4d2)=》1234 进制转换 https://tool.lu/hexconvert/ 不过这个转换 有小数点的转化存在问题 不过一般情况下不会用到带小数点的数值转化为十六进制的
4 十六进制的也支持小数和指数的方式 但是我看了下手册 感觉如此扭曲的十六进制的表示方式 觉得没什么用处
小知识:lua数值运算中的自动转化
正常的运算中 除了除法和乘方 其他的运算表达式中 如果参与运算的数值有浮点数 那么结果就是浮点数 这不废话么
除法和乘方中的计算 是先把参与运算的数值转化为浮点数再计算 结果必定是浮点数 想起了当前学校里学习c语言的时候了
123
L1[数值]02. 十六进制数值
没什么说的 十六进制的浮点数写起来麻烦 不说了
L1[数值]03. 算术运算符
没什么说的 加减乘除 求余数(%) 求结果整数部分(//) 乘方 (^) 还涉及到了数值计算的自动转换的东西 之前也说了
https://cloudwu.github.io/lua53doc/manual.html#3.4.1 手册说的足够清楚 没什么多余的
了解一下 //是5.3独有的取整运算符 之前版本没有 以前版本用math.modf()函数来处理
为何不用floor() floor只是取出整数部分 但是小数部分可能我们也需要用到 而math.modf()函数却可以把整数部分和小数部分都取出来
xx,yy=math.modf(10/3)
traceprint(xx,yy)
结果 test5.lua:18: 3 0.33333333333333
顺便提一下 floor函数 是取数值的整数部分 但是如果想要这个函数会自动四舍五入 那么就
print(flloor(3.14+0.5))--在取整数值上加0.5可以完美解决不会四舍五入的问题
注意:虽然这里说的是5.3的语法 但是按键插件其实是5.2的lua版本
L1[数值]04. 关系运算符
没什么说的
>
<
>=
<=
== 等于 而且是不但是内容一致 类型也要一致
~= 不等于 注意不是!= 而是~=
注意:关系表达式返回的不是true就是false
特殊情况了解:整数2和浮点数2.0 是否相等
相等 他们内容是一样的 都是2 而且都是数值类型 而浮点数和整数都是属于数值类型 lua里面数值只有1个类型 数值型
traceprint(2==2.0)==》true
L1[数值]05. 逻辑运算符and
1.false和nil是false 其他全是true
2 and or 和按键下的不一样 按键下逻辑表达式返回的不是true就是false 但是lua下的逻辑表达式返回的是参与运算的项的内容
and第一位运算项为false 则返回第一项内容 不然返回第二项内容 (注意第一位为false 那么就不会运行第二项表达式)
or第一个运算项为true 则返回 第一项内容 否则返回第二项内容(注意第一位为true那么就不会运行第二项表达式)
not 永远返回true或者false 没得说
老师这教程果然是针对新手的 硬生生的讲了两节课。。。
细节自己查手册 真的写的很详细了又精干了
L1[数值]05. 逻辑运算符or与not
123
[lua]紫猫lua教程-命令宝典-L1-01-03. 数值数据的更多相关文章
- [lua]紫猫lua教程-命令宝典-L1-01-02. 变量
L1[变量]01. 变量命名规则 命名规则:数字字母下划线构成 但是不能数字开头 不推荐中文名 很多都是不支持中文 但是在一些其他的编辑器里面 比如触摸精灵 之类的 就可以 注意 :变量命名必须要包含 ...
- [lua]紫猫lua教程-命令宝典-L1-01-01. Lua环境与IDE
网上大把的lua教程 不过紫猫老师的教程向来都是讲的非常仔细 所以最近天气已经36+了 魔兽世界还需要冲飞行声望 懒得写单子根本没有单子,正好认认真真的看下紫猫老师的lua教程 紫猫老师的lua教 ...
- [lua]紫猫lua教程-命令宝典-L1-01-04. 字符串数据
L1[字符串]01. 单引号与双引号 没什么说得 字符串:以双引号包含 或者单引号包含 或者[[]]包含 L1[字符串]02. 长文本内容 小知识:如果用[[]]包含字符串内容 但是字符串内容里面 包 ...
- [lua]紫猫lua教程-命令宝典-L1-01-10. 自定义函数
L1[function]01. 定义与调用函数 函数的定义 和概念 没什么可说的 lua的函数声明和调用是有先后顺序的 先声明后调用 函数就是变量的一种 所以可以自由的把函数在变量间相互赋值 不过注 ...
- [lua]紫猫lua教程-命令宝典-L1-01-09. string字符串函数库
L1[string]01. ASCII码互转 小知识:字符串处理的几个共同的几点 1.字符串处理函数 字符串索引可以为负数 表示从字符串末尾开始算起 所有字符串处理函数的 字符串索引参数都使用 2.所 ...
- [lua]紫猫lua教程-命令宝典-L1-01-08. math数学函数库
L1[math]01. 取绝对值 L1[math]02. 三角函数 小知识:注意 lua下三角函数用的参数是弧度 而不是角度 弧度=角度*pi/180 -->弧度角度换算公式 lua的mat ...
- [lua]紫猫lua教程-命令宝典-L1-01-07. table表
L1[table]01. table表的定义与赋值 小知识:声明表的例子 xx={}--创建一个空表xx --给这表的元素赋值 test="a" xx[test]="a& ...
- [lua]紫猫lua教程-命令宝典-L1-01-06. 循环结构
L1[循环]01. for循环结构介绍 只是简单的说了下计数型的for循环结构 for i=1,10,1 do testlib.traceprint(i) end 注意几点: 1.上面的1和10表示循 ...
- [lua]紫猫lua教程-命令宝典-L1-01-05. if判断结构
L1[if]01. 简单的if判断结构 没什么说得 if得基本结构如下 xxx= ) then testlib.traceprint("1-100") ) then testlib ...
随机推荐
- navicat永久激活
https://jingyan.baidu.com/article/f54ae2fc51f0311e92b84998.html
- 使用TensorFlow训练模型的基本流程
本文已在公众号机器视觉与算法建模发布,转载请联系我. 使用TensorFlow的基本流程 本篇文章将介绍使用tensorflow的训练模型的基本流程,包括制作读取TFRecord,训练和保存模型,读取 ...
- 创建JDBC六个步骤
JDBC库中所包含的API通常与数据库使用于: 连接到数据库 创建SQL或MySQL语句 在数据库中执行SQL或MySQL查询 查看和修改数据库中的数据记录 创建JDBC应用程序 建立一个JDBC应用 ...
- 转载:android audio policy
Audio policy basic:https://www.cnblogs.com/CoderTian/p/5705742.html Set volume flow:https://blog.csd ...
- Visual detection of structural changes in time-varying graphs using persistent homology
PKU blog about this paper Basic knowledge: 1. what is time-varying graphs? time-varying graph VS st ...
- DTU DeepLearning: exercise 7
torch activation functions: sigmoid, relu, tanh, softplus. https://morvanzhou.github.io/tutorials/ma ...
- SDRAM中数据掩码的作用
DQM就是掩码控制位.在sdram中,每个DQM控制8bit Data在读操作的时候没什么大的影响,比如你读32位的sdram module, 但你只要其中低8bit的数据,没有关系,只要读出32bi ...
- C语言循环语句工程用法
-循环语句分析 循环语句的基本工作方式 - 通过条件表达式判断是否执行循环体 - 条件表达式循环if语句表达式的原则 do.while.for的区别 - do语句先执行后判断,循环体至少循环一次 - ...
- SpringMVC 配置.html拦截时,返回JSON数据时出现406错误解决方案
[说明]在SpringMVC框架的使用中常常会使用@ResponseBody注解,修饰"处理器"(Controller的方法),这样在处理器在返回完毕后,就不走逻辑视图,而是将返回 ...
- APP开发工具如何选?
随着技术的发展,在当前开发一款APP已经非常的简单和快速.特别是近些年,利用HTML5技术将APP的开发门槛进一步降低.各种开发工具和框架层出不穷,令人眼花缭乱.这么多的工具摆在眼前应该如何进行选择呢 ...