lua和shell的一些差异化语法_温故有新知的博客-程序员秘密_lua和shell脚本区别

技术标签: # lua脚本  lua  开发语言  

for循环

--Lua 编程语言中 for语句有两大类:数值for循环、泛型for循环

--数值for循环
--i从10到1,每次-1
for i=10,1,-1 do
    print(i)
end

--泛型for循环
--i是数组索引值,v是对应索引的数组元素值。ipairs是Lua提供的一个迭代器函数,用来迭代数组。
a = {
    "one", "two", "three"}
for i, v in ipairs(a) do
    print(i, v)
end

repeat...until循环
和c语言中的do...while作用一样,至少会先执行一次

a=5
repeat
    print(a)
    a=a-1
until(a<0)

运算符

^ 乘幂 10^2 = 100
~= 不等于
and 逻辑与
or 逻辑或
not 逻辑非
.. 连接两个字符串
# 一元运算符,返回字符串或表的长度。
local a = 'hello'
print(#a)
a = 'hello' .. " "
print(#a)

====5
6

字符串有3种表示方法

  • 单引号间的一串字符。
  • 双引号间的一串字符。
  • [[ 与 ]] 间的一串字符。
local a = "hello"
local b = 'hello'
local c = [[hello]]

print(a, b, c)
====》
hello   hello   hello

数组
在 Lua 索引值是以 1 为起始,但你也可以指定 0 开始。

  • 索引没有值则返回nil
local arr = {
    'monday', 'thursday', 'friday'}
for i= 0, 3 do
    print(arr[i])
end

====nil
monday
thursday
friday
  • 索引可以从负数开始
arr = {
    }
arr[-1] = 10
print(arr[-1])
====>
10
  • lua无法输出整个数组,只能遍历输出,输出的整个数组应该是一个指针地址
arr = {
    }
arr[-1] = 10
print(arr)
====>
table: 00AE98A0
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_28686911/article/details/121332079

智能推荐

(七)Redis基本操作-Geo_码海拾贝2023的博客-程序员秘密

Jedis jedis=new Jedis("127.0.0.1");//GEOADD:增加某个地理位置的坐标Long geoadd = jedis.geoadd("快餐店", 116.358276, 39.994579, "吉野家");//GEOPOS:获取某个地理位置的坐标List&lt;GeoCoordinate&gt; geopos = jedis.geopos("快餐店", "吉野家");//GEODIST:获取两个地理位置的距离jedis.geodist("快餐店","吉野家",".

mini2440之编译busybox-1.22.1c出错以及解决办法_水之冰的博客-程序员秘密

编译busybox是出现如下错误  [email protected]:/lesson/starace/busybox/busybox-1.22.1$ make  CC      networking/libiproute/iplink.onetworking/libiproute/iplink.c: In function `vlan_parse_opt':networking/

JAVA编程练习:兔子问题_-命起涟漪-的博客-程序员秘密

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一   对兔子,假如兔子都不死,问每个月的兔子总数为多少?

leetcode第102题,二叉树的层次遍历,java实现_Shine.C的博客-程序员秘密

一、迭代法使用队列来记录层序遍历过程,借用队列先入先出特性,通过迭代实现层序遍历。运行结果执行结果:通过执行用时 :1 ms, 在所有 Java 提交中击败了98.72%的用户内存消耗 :36.5 MB, 在所有 Java 提交中击败了13.68%的用户代码与注释class Solution { public List&lt;List&lt;Integer&gt;&gt; ...

Django之ContentType详解_django_content_type_aaronthon的博客-程序员秘密

contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中。models.py文件的表结构写好后,通过makemigrations和migrate两条命令迁移数据后,在数据库中会自动生成一个django_content_type表:每当我们创建了新的model并执行数据库迁移后,ContentTy...

Oracle_ORA-00600: internal error code, arguments: [729]_ora-00600: internal error code, arguments: [729], _奋斗的小鸟_oracle的博客-程序员秘密

1)、错误现象Errors in file /oracle/app/admin/orayz1/udump/oyz1a_ora_1130868.trc:ORA-00600: internal error code, arguments: [729], [152], [space leak], [], [], [], [], []ORA-02068: following severe er

随便推点

Linux系统Hadoop伪分布式运行环境搭建_linuxhadoop伪分布模式搭建_卷不动了斯基的博客-程序员秘密

虚拟机环境准备克隆虚拟机修改克隆虚拟机的静态IPservice NetworkManager stopchkconfig NetworkManager off 永久关闭 Manager网卡 service network restart 重启network网卡修改IP地址cd /etc/sysconfig/network-scripts/修改主机名Centos7: 重启后能保持修改后的。hostnamectl set-hostname xxx关闭防火墙//临时关闭

yocto 编译流程分析_yocto编译流程分析_momosjy的博客-程序员秘密

yocto 编译流程分析2015年04月15日 10:55:13 日月星辰007 阅读数:4955git clone 一份poky 的工程到本地。source poky/oe-init-build-env your_build_path看下 oe-init-build-env 这个shell 脚本都干了些什么: [plain] view plaincopyif [ -z...

SAP HR/HCM 定界的个人理解_sap hr 定界_csucoder_zone的博客-程序员秘密

“定界”可以为HR的对象(人员和岗位的关系、岗位和组织结构的关系、组织结构和组织结构的关系等等)定义失效时间。

Flowable入门系列文章18 - 部署Flowable_flowable部署_分享牛的博客-程序员秘密

flowable入门、flowable现状、flowable开源产品、flwoable入门系列、flowable课程、flowable与activiti区别Flowable是用Java编写的轻量级业务流程引擎。Flowable流程引擎允许您部署BPMN 2.0流程定义(用于定义流程的行业XML标准),创建流程定义的流程实例,运行查询,访问活动或历史流程实例以及相关数据等等。本节将逐步介绍各种概念和API,通过您可以在自己的开发机器上进行的实例进行实现。

Nodejs报错集_weixin_30700099的博客-程序员秘密

1.ReferenceError: userModule is not definedA:1》检查app.js文件中是否调用userModule所在的文件(const userModule=require("./routes/useModule2.js"); 2》检查userModule所在的模块文件是否将模块公开出来(module.exports=userModule)...

mysql 查看语句的执行效率_weixin_30268071的博客-程序员秘密

EXPLAIN一、用途:1、什么时候必须为表加入索引以得到一个使用索引找到记得的更快的select2、知道优化器是否以一个最佳次序联结表。《官方的关于explain的文档在http://dev.mysql.com/doc/refman/5.1/en/using-explain.html(英文) 》二、使用方法:EXPLAIN table_name或EXPLAIN S...

推荐文章

热门文章

相关标签