Lua基本语法
#Lua基本语法和用法
1. 局部变量和全局变量
当变量使用了local修饰符修饰以后表示局部变量。
- 全局变量:在所有的代码块中可见,可以被使用
- 局部变量:仅仅在被申明的代码段可见,被使用
a = 1; ------全局变量 local b = 2; ------局部变量
2. 赋值
lua可以进行多重赋值。lua会将等号右边值得个数调整到和左边一样,多出来的会赋值为nil.
local x, y, z = 1, 2;
print(x, y, z); ----------1 2 nil
3. 控制语句
| 语句 | 描述 |
|---|---|
| if 语句 | if 语句 由一个布尔表达式作为条件判断,其后紧跟其他语句组成。 |
| if…else 语句 | if 语句 可以与 else 语句搭配使用, 在 if 条件表达式为 false 时执行 else 语句代码。 |
| if 嵌套语句 | 你可以在if 或 else if中使用一个或多个 if 或 else if 语句 。 |
if a == true then
print("true");
end
local a = 10;
if a > 1 then
print("true");
else
print("false");
end
if a == 1 then
pirnt(1);
elseif a == 2 then
print(2);
elseif a == 3 then
print(3);
end
4. 循环语句
循环类型|描述 —|— while 循环|在条件为 true 时,让程序重复地执行某些语句。执行语句前会先检查条件是否为 true。 for 循环|重复执行指定语句,重复次数可在 for 语句中控制。 repeat…until|重复执行循环,直到指定的条件为真时为止。类似于do while。
> while(condition)
> do
> statements
> end
>
> local a=10
> while( a < 20 )
> do
> print("a 的值为:", a)
> a = a+1
> end
> ---------------------------------------------------------------
> ---------------------------------------------------------------
> --var从exp1变化到exp2,每次变化以exp3为步长递增var,并执行一次"执行体"。exp3是可选的,如果不指定,默认为1。
> --for的三个表达式在循环开始前一次性求值,以后不再进行求值。比如上面的f(x)只会在循环开始前执行一次,其结果用在后面的循环中。
> for var=exp1,exp2,exp3 do
> <执行体>
> end
>
> for i=10,1,-1 do
> print(i)
> end
>
> for i=1,10 do
> print(i)
> end
>
> --泛型for循环
> for i,v in ipairs(a)
> do print(v)
> end
>
> days = {"Suanday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}
> for i,v in ipairs(days) do
> print(v)
> end
> --------------------------------------------------------------
> --------------------------------------------------------------
> repeat
> statements
> until( condition )
>
> --[ 变量定义 --]
> a = 10
> --[ 执行循环 --]
> repeat
> print("a的值为:", a)
> a = a + 1
> until( a > 15 )
输出:
a的值为: 10
a的值为: 11
a的值为: 12
a的值为: 13
a的值为: 14
a的值为: 15