本文参考(摘录)自如下地址(排名不分前后):

LUA快速使用指南

LUA5.3手册

Lua教程

一、简单理解lua

lua行结束符_赋值

Lua在葡萄牙语中是月亮的意思,是一个有效的轻量级的可嵌入式脚本语言。它支持面向对象和面向过程的编程方式。从1993年被开发出来至今仍然非常地活跃,比如深度学习的开源框架Torch就使用Lua和C作为开发的主要语言。由于它的速度和易用性,开发者可以将Lua嵌入到游戏引擎中。同时,Lua还有很高的可扩展性。另外在源码文件以及运行所需的内存使用量方面都是相对较小。

Lua的功能特色、安装步骤与使用简例在LUA快速使用指南中整理的非常详细,

二、关于lua的基本语法

1、注释

单行注释:使用两个减号作为单行注释: –注释内容,示例如下

-- 这里是注释内容

多行注释:示例如下

--[[ 
这里是注释内容
--]]

2、Lua保留关键字,不能作为常量或变量或其他用户自定义标识符

and

break

do

else

elseif

end

false

for

function

if

in

local

nil

not

or

repeat

return

then

true

until

while

 

 

3、基本的数据类型

Lua中变量无需进行类型定义,默认情况下变量生命域为全局,在Lua中,全局变量不需要事先声明,赋值后即创建,访问没有初始化的变量也不会出错,只是会得到nil,而将一个变量赋值成nil时可以相当于删除了此变量。nil为Lua的基本数据类型的一种,Lua有如下八种数据类型:

类型

说明

nil

表示无效,当变量赋值为nil时,可以相当于删除操作(一定要小写)

boolean

布尔值:true或false

string

字符串:使用单引号或者双引号来表示

number

数字型:双精度类型,double的64位中有52位用于保存精确的int值; 对于需要52位以内的int值,机器的精度不是问题。

function

函数类型

thread

Lua中使用coroutine实现类似线程的功能

table

关联数组

userdata

用户自定义类型

4、变量的生命域

Lua中默认情况变量生命周期为全局,可以通过local来指定变量生命域。local修饰的变量在函数之外无法取到值。

编写lua1.lua文件,内容如下:

lua行结束符_Lua_02

执行结果如下图

lua行结束符_Lua_03

5、逻辑控制

lua行结束符_lua行结束符_04

执行结果

lua行结束符_lua行结束符_05

6、循环控制

for循环

注意for中的步长可以省略,省略情况则默认是1

lua行结束符_Lua_06

执行结果如图

lua行结束符_lua_07

while循环

lua行结束符_lua行结束符_08

打印结果

lua行结束符_lua_09

repeat...until循环

相当于do ... while

lua行结束符_Lua_10

打印结果

lua行结束符_Lua_11

7、文件读写

lua行结束符_赋值_12

之后会看到test.txt追加了两行文字