Lua中的变量与赋值方法

看以下案例:

test.lua

-- 第一个lua脚本
--注释使用“--”符
--变量未定义时,默认初始化的值为nil
--这样的定义为全局
num1 = 1 ;
--加了关键字local表示这个变量是局部变量
local num2 = 2 ;
--定义变量的末尾不加分号;也是可以的,个人建议,因为Lua是C写的,写分号还是规范点
num3 = 3
--定义一个函数,目的是实现两数相加并返回
function add()
 --a = 1  也可以在函数内部定义
 --b = 2
 return num1+num2 ;
 end
--实现一个可传参的sub函数
function sub(a , b)
 return a-b ;
 end
--实现多个返回值的函数
function manyarg(a , b , c)
 return a,b,c
 end
--Lua的赋值操作
x = 100
y = 200
--这样相当于j=10,k=2*x
j,k = 10,2*x
--这样的赋值,Lua会解释成将x和y的值互换
x,y = y,x
--用多个值接收函数的返回值
--调用manyarg这个函数将会返回q,w,e三个参数
--其中a给q,b给w,c给e
q,w,e = manyarg(1,2,3)
--索引
--其实类似字符串数组
_able = {}
_able["key"] = "hello"
_able1 = "Hello world!"
--函数调用
print(add())
print(sub(2,1))
print(x,y)
print(q,w,e)
print(_able["key"])
print(_able.key)
print(_able1)

使用lua解析脚本:lua  test.lua

运行结果:

3
1
200   100
1    2    3
hello
hello
Hello world!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

(0)

相关推荐

  • Luvit像Node.js一样写Lua应用

    luvit是什么?它是目前Lua这个小众语言中较为流行的一个开源框架,给那些习惯使用Lua的开发者一个机会向写Node.js一样用Lua进行开发,它是Lua的Node.js.在Gitlab上,项目的描述对于Luvit是这样描述的:Lua + libUV + jIT = pure awesomesauce. 概要信息 安装 提供了安装脚本进行一键安装,但是版本不是最新,如果需要最新的版本,可以从源码开始 curl -L https://github.com/luvit/lit/raw/master

  • Nginx安装lua-nginx-module模块的方法步骤

    ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本 特性很牛叉,可自行百度查看,这里主要是示范一下,如何在Nginx下安装lua-nginx-module模块 当然,如果你之前没有安装过Nginx,而且嫌安装麻烦,可直接下载openresty安装简单快捷,http://openresty.org/cn/installation.html(阿里的大牛章亦春的作品,膜拜~~~) 1.下载安装LuaJIT

  • Lua协同程序coroutine的简介及优缺点

    什么是协同(coroutine)? Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西. 协同是非常强大的功能,但是用起来也很复杂. 线程和协同程序区别 协程是编译器级别的,线程是操作系统级别的,在多处理器情况下,多线程程序同时运行多个线程:而协同程序是通过协作来完成,在任一指定时刻只有一个协同程序在运行,并且这个正在运行的协同程序只在必要时才会被挂起.这样Lua的协程就不能利用现在多核技术了.

  • lua开发中实现MVC框架的简单应用

    先简单说说MVC,即Model View Controller.Model(模型),一般负责数据的处理:View(视图),一般负责界面的显示:Controller(控制器),一般负责前端的逻辑处理.拿一款手机游戏来说,界面UI的显示.布局等就是View负责:点击了按钮,手势的滑动等操作由Controller来处理:游戏中需要的数据资源就交给Model. 接下来,看看在游戏开发中怎么用,这里用Lua(环境使用cocos code ide)给大家说说. 先来看看项目的目录结构: 其中cocos.Co

  • Lua中三种循环语句的使用讲解

    Lua的循环和C语言的循环的语法其实差不多,所以,理解起来就很好理解的啦,所以实现也很简单,跟C没什么两样,都差不多. 案例如下: test1.lua -- 1.while循环 --[[ 理解为C语言的就行了,其实差不多的 语法格式: while(true) do 执行语句 end ]] --定义一个全局变量a=0 a=0 -- while(true) do a=a+1 print("a:",a) if(a == 5) then break end end -- 2.for循环 --[

  • Lua游戏开发教程之时区问题详解

    前言 什么是Lua? Lua 是一个小巧的脚本语言,巴西里约热内卢天主教大学里的一个研究小组于1993年开发,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能.Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行.一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的.这一切都决定了Lua是作为嵌入式脚本的最佳选择.相比Python和Per的内核,Lua的内核小于120KB,而Python的内核大约860KB,Perl的内核大约1.1M

  • cocos2dx+lua实现橡皮擦功能

    游戏中刮刮乐是怎么实现的?做了一个小例子看了一下. 实现原理:随着触摸点的移动,通过setBlendFunc函数设置部分区域的颜色混合(将上层图片透明度为0,底层我们想要的图片就显示出来) --橡皮擦功能测试 local function initInfo() local scene = CCScene:create() local layer = CCLayer:create() scene:addChild(layer) --擦除后要显示的图片 local tupian = CCSprite

  • 安装Nginx+Lua开发环境

    首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用.借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序.而且OpenResty提供了大量组件如Mysql.Redis.Memcached等等,使在Nginx上开发Web应用更方便更简单.目前在京东如实时价格.秒杀.动态服务.单品页.列表页等都在使用Nginx+Lua架构,其他公司如淘宝.去哪儿网等. 安装环境

  • Centos7 安装Nginx整合Lua的示例代码

    前言 本人的使用的电脑是Mac,操作系统是macOS Mojave.电脑上装有虚拟机. 虚拟机上安装Centos7操作系统,在其之上安装Nginx及Luau类库,整个过程是在系统安装完成之后开始记录. 建议安装前先拍快照,出现问题可以恢复 准备工作 如果安装的Linux能够联网,并且外部也能正常使用Linux的端口,那么可以忽略下面两部 1.设置自动获取ip (1)在Linux上输入命令 [root@localhost ~]ip addr #查看ip [root@localhost ~]nmcl

  • Lua在各个操作系统中的开发环境配置教程

     Lua开发环境设置 如果愿意设置您的Lua编程语言环境中,需要用计算机上的以下两个软件,(a)文字编辑器,(b)Lua解释,以及(c)Lua编译器. 文本编辑器 这将被用来输入编写程序.一些编辑器包括Windows记事本,操作系统Edit命令,Brief,Epsilon,Emacs和VIM或VI. 文本编辑器名称和版本可以在不同的操作系统上.例如,记事本可用Windows上,vim或者vi可以在Windows以及Linux或UNIX上使用. 编辑器创建文件称为源文件和包含程序的源代码.在Lua

随机推荐