开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第一阶段:Lua 语法函数】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/669/detail/11604
Lua 语法-函数
内容介绍
一、数据类型转换
二、函数
三、总结
一、数据类型转换
Lua 提供了类型转换函数,这些转换函数包括:转换成数字和转换成字符串等。
转换成字符串
Tostring()可以将布尔类型和数值类型转换为字符串类型
转换成数字
Tonumber()可以把非数字的原始数值转换成数字
然后我们创建一个 vi test07.lua,做一个输出,先进行转换,然后再进行运算。
看一下效果,创建一个 vi test07.lua,然后进入编辑,输入一个 print(type(“123”)),双引号里面是一个字符串类型,然后通过 print(type(tonumber(“123”)))进行转换,看一下效果,前面是 string,后面是number,先输出一个字符串类型,然后是一个数字。
换行,分隔符,然后输入 print(type(123)),这个没有双引号,是 number 类型,现在把它转化为 print(type(tostring(123))),加上 tostring 语法,执行后变成 number,后输出 string,这个就说数字类型转换。
二、函数
(1)函数定义
ua 编程语言函数定义格式如下:optional
_
function
_
scope function function
_n
ame(argument1,argument2
,
argum
e
n
t3,...
argumentn)
function
_
body
return result
_
params
_
comma
_
separated
end
optional
_
function_scope:
该参数是可选的制定函数是全局函数还是局部函数,未设置该参数默认为全局函数,如果你需要设置函数为局部函数需要使用关键字 local.
Function_name
指定函数名称
argument1,argument2,argument3,...argumentn:函数参数,多个参数以逗号隔开,函数也可以不带参数。
Function_body:函数体,函数中需要执行的代码语句块。
result_params_comma_separated:
函数返回值,Lua语言函数可以返回多个值,每个值以逗号隔开。
上面就是定义的一个语法,前面部分就是说这是一个全局函数还是一个局部函数,如果加上 local,那么就是局部的,关键字是 function,后面是函数的参数,函数参数可以是多个,也可以没有,接下来是函数体,返回的值。
在 vi test07.lua 里面,加一个分字符,然后创建一个全局函数,function sum (a,b),c=a+b,return c,end,然后调用函数,print(sum(10,20)),经过运算得出结果30,或者换一个方式,定义 d=sum(10,20),然后输出一个d,print(d),这样也是可以的,然后再把 a,b,c,分别分开输出,这样也可以,做一个多部的接收,aa,bb,cc=sum(10,20),print(aa,bb,cc)。
三、总结
数据类型转换
tostring: 将数值或者 boolean 类型的值转换为字符串
tonumber: 将字符串类型的数值转换为真正的数值
函数的定义
全局或者局 function 函数名f1 (参数1,参数2.......)
函数体
return 返回值1,返回值2......
end
调用:local
x,y,
z
= f1(a,b,c,d)
lua 的 table
1、创建 table:mytable=(ip="192.168.56.111",port=9092)
2、取值 :mytable.ip