交互式模式编程
Lua提供了一种叫作交互模式的模式。 在此模式下,可以依次输入命令代码并获得即时结果。 这可以通过使用lua -i
或lua
命令在shell中调用。 输入此内容后,按Enter 键,将启动交互模式,如下所示 -
$ lua -i
$ Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio
quit to end; cd, dir and edit also available
可以使用以下声明打印某些内容 -
print("Hello, Yiibai")
按Enter 键后,将获得以下输出 -
Hello, Yiibai
默认模式编程
使用Lua文件名参数调用解释器开始执行文件并继续直到脚本完成。 脚本完成后,解释器不再处于活动状态。
下面来编写一个简单的Lua程序。 所有Lua文件都有扩展名.lua
。 所以将以下源代码放在test.lua文件中。
print("Hello, Yiibai")
假设,lua环境安装设置正确,使用以下命令运行程序 -
$ lua test.lua
执行以后将得到以下输出 -
Hello, Yiibai
下面再尝试另一种方式来执行Lua程序,以下是修改后的test.lua 文件 -
#!/usr/local/bin/lua
print("Hello, Welcome")
在这里,假设/usr/local/bin
目录中提供了Lua解释器。 如果解释器以#
符号开头,则第一行将被解释器忽略。现在,尝试运行此程序如下 -
$ chmod a+rx test.lua
$./test.lua
将会得到以下输出结果 -
Hello, Welcome
下面来看一下Lua程序的基本结构,这样可以很容易地理解Lua编程语言的基本构建块。
Lua令牌标记
Lua程序由各种标记组成,标记可以是关键字,标识符,常量,字符串文字或符号。 例如,以下Lua语句由三个标记组成 -
io.write("Hello world, from ",_VERSION,"!\n")
独立标记是 -
io.write
(
"Hello world, from ",_VERSION,"!\n"
)
注释
注释就类似Lua程序中的帮助文本一样,解释器会忽略它们。 它们以--[[
开始,并以字符 --]]
结尾,如下所示 -
--[[ my first program in Lua --]]
标识符
Lua标识符是用于标识变量,函数或任何其他用户定义项的名称。 标识符以字母A
到Z
或a
到z
或下划线_
开头,后跟零个或多个字母,下划线和数字(0
到9
)。
Lua不允许标识符中的标点符号,如@
,$
和%
。 Lua是一种区分大小写的编程语言。 因此,Yiibai
和yiibai
是Lua中的两个不同的标识符。 以下是可接受标识符的一些示例 -
mohd zara abc move_name a_123
myname50 _temp j a23b9 retVal
关键字
以下列表显示了Lua中的一些保留字。 这些保留字不能用作常量或变量或任何其他标识符名称。
Lua空白符
只包含空格(可能带有注释)的行称为空行,Lua解释器完全忽略它。
空白符是Lua用来描述空格,制表符,换行符和注释的术语。 空格符将语句的一部分与另一部分分开,并使解释器能够识别语句中的一个元素(如int
结束)和下一个元素的开始位置。 因此,在以下声明中 -
local age
在local
和age
之间必须至少有一个空格字符(通常是空格),以便解释器能够区分它们。 另一方面,在以下声明中 -
fruit = apples + oranges --get the total fruit
在fruit
和=
之间,或=
和apples
之间不需要空白字符,但如果希望增加可读性,可以自由添加一些空白字符。