Lua 基本语法
Lua 学习起来非常简单
我们可以使用两种方式运行 Lua 脚本
交互式编程
Lua 提供了交互式编程模式。我们可以在命令行中输入程序并立即查看效果。
Lua 交互式编程模式可以通过命令 lua -i 或 lua 来启用
$ lua -i Lua 5.3.3 Copyright (C) 1994-2016 Lua.org, PUC-Rio >
在命令行中,输入以下命令:
> print("Hello www.twle.cn!")
接着我们按下回车键,输出结果如下:
> print("Hello www.twle.cn!") Hello www.twle.cn! >
在接下来的学习中,如果看到了以 >
符号开头的代码,则表示在交互式编程模式中运行代码
脚本式编程
可以将 Lua 程序代码保持到一个以 .lua
结尾的文件,并执行,该模式称为脚本式编程
例如我们把以下代码保存在 main.lua 的脚本文件中
print("Hello World!") print("www.twle.cn")
然后使用 lua main.lua 命令执行以上脚本,输出结果为:
$ lua mail.lua Hello World! www.twle.cn
我们也可以将代码修改为如下形式来执行脚本(在开头添加:#!/usr/local/bin/lua):
#!/usr/local/bin/lua print("Hello World!") print("www.twle.cn")
以上代码中,我们指定了 Lua 的解释器 /usr/local/bin/lua
。
加上 # 号标记解释器会忽略它。
接下来我们为脚本添加可执行权限,并执行:
$ chmod +x main.lua $ ./main.lua Hello World! www.twle.cn
注释
单行注释
单行注释以两个减号开始,后面的任意字符都会视为注释,会被 Lua 解释器忽略
--
多行注释
多行注释以 --[[
开始, 以 --]]
结束,可以跨多行
--[[ 这是一个 多行注释 --]]
标识符
Lua 标识符用于定义一个变量,函数获取其他用户定义的项。 标示符以一个字母 A 到 Z 或 a 到 z 或下划线 _ 开头后加上0个或多个字母,下划线,数字(0到9)
最好不要使用下划线加大写字母的标示符,因为 Lua 的保留字也是这样的
Lua 不允许使用特殊字符如 @, $, 和 % 来定义标示符。 Lua 是一个区分大小写的编程语言,因此在 Lua 中 Twle 与 twle 是两个不同的标示符
以下列出了一些正确的标示符:
mohd zara abc move_name a_123 myname50 _temp j a23b9 retVal
关键字
下表列出了 Lua 的保留关键字。
保留关键字不能作为常量或变量或其他用户自定义标识符
and | break | do | else |
---|---|---|---|
elseif | end | false | for |
function | if | in | local |
nil | not | or | repeat |
return | then | true | until |
while |
一般约定,以下划线开头连接一串大写字母的名字(比如 _VERSION)被保留用于 Lua 内部全局变量
全局变量
在默认情况下,变量总是认为是全局的
全局变量不需要声明,给一个变量赋值后即创建了这个全局变量 访问一个没有初始化的全局变量也不会出错,只不过得到的结果是:nil
> print(b) nil > b=10 > print(b) 10 >
如果想删除一个全局变量,只需要将变量赋值为 nil
> b = 13 > b 13 > b = nil > b nil > print(b) nil >
当且仅当一个变量不等于 nil 时,这个变量即存在