Lua语法要点2

时间:2024-12-23 09:07:43

Lua语法要点2

1、Lua函数

  function 可以添加 local 关键字。添加后为局部函数,不添加(默认)为全局函数。return 可以返回多个返回值,以, 分隔。

  使用 ... 来表示变长参数。

function add(...)
local s =
for i, v in ipairs{...} do --> {...} 表示一个由所有变长参数构成的数组
s = s + v
end
return s
end
print(add(,,,,)) --->25

  通过 select("#",...) 来获取可变参数的数量:

function average(...)
result =
local arg={...}
for i,v in ipairs(arg) do
result = result + v
end
print("总共传入 " .. select("#",...) .. " 个数")
return result/select("#",...)
end print("平均值为",average(,,,,,))
  • select(n, …) 用于访问 n 到 select('#',…) 的参数
do
function foo(...)
for i = , select('#', ...) do -->获取参数总数
local arg = select(i, ...); -->读取参数
print("arg", arg);
end
end foo(, , , );
end

2、for循环

  var 从 exp1 变化到 exp2,每次变化以 exp3 为步长递增 var,并执行一次 "执行体"。exp3 是可选的,如果不指定,默认为1。

for var=exp1,exp2,exp3 do
<执行体>
end

  for的三个表达式在循环开始前一次性求值,以后不再进行求值。比如上面的f(x)只会在循环开始前执行一次,其结果用在后面的循环中。

#!/usr/local/bin/lua
function f(x)
print("function")
return x*
end
for i=,f() do print(i)
end
function

3、运算符。

  ^ 是指数运算符,如 10^2 = 100。

  ~= 是不等于运算符,同C++中的 !=。

  逻辑运算符全部采用英文单词来表示。

  Lua语法要点2

  其他运算符
  Lua语法要点2

4、

5、

6、

7、

8、

9、