Table — 白话Lua系列零基础教程 第七期

Posted 合宙Luat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Table — 白话Lua系列零基础教程 第七期相关的知识,希望对你有一定的参考价值。


大家好,时间过得真快,这是2019年度最后一期教程啦~



同时我们来个君子之约:先找到的同学,每人请只取一个券码使用哦,并请文末留言告知已使用几号券;让更多人享受福利,也减少大家“挖宝”尝试的时间。


时光不虚度,Lua伴我行~让我们开启新的内容吧!



还没有参与学习的朋友,可点击以下链接查看往期教程:




建议大家在阅读时多运行代码进行测试,以确保牢记和巩固知识点。为了方便测试Lua代码,我们提供了Lua在线调试网站:

https://chenxuuu.gitee.io/lua-online/


本教程为零基础教程,适合广大没有接触过Lua的用户进行阅读。




1

认识数组


数组,使用一个变量名,存储一系列的值。

很多语言中都有数组这个概念,在Lua中,我们可以使用table(表)来实现这个功能。

在Lua中,table是一个一系列元素的集合,使用大括号进行表示,其中的元素之间以逗号分隔,类似下面的代码:

t = {1,3,8,5,4}


我们可以直接使用元素下标,来访问、或者对该元素进行赋值操作。


在上面的table变量t中,第一个元素的下标是1,第二个是2,以此类推。

我们可以用变量名+中括号,中括号里加上下标,来访问或更改这个元素,如下面的例子:


t = {1,3,8,5,4}

print(t[1]) --打印1

print(t[3]) --打印8


t[2] = 99 --更改第二个元素的值

print(t[2]) --打印99


t[6] = 2 --凭空新建第六个元素并赋值

print(t[6]) --打印2


print(t[10])

--因为不存在,打印nil


Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B1%2C3%2C8%2C5%2C4%7D%0Aprint%28t%5B1%5D%29%20--%u6253%u53701%0Aprint%28t%5B3%5D%29%20--%u6253%u53708%0A%0At%5B2%5D%20%3D%2099%20--%u66F4%u6539%u7B2C%u4E8C%u4E2A%u5143%u7D20%u7684%u503C%0Aprint%28t%5B2%5D%29%20--%u6253%u537099%0A%0At%5B6%5D%20%3D%202%20--%u51ED%u7A7A%u65B0%u5EFA%u7B2C%u516D%u4E2A%u5143%u7D20%u5E76%u8D4B%u503C%0Aprint%28t%5B6%5D%29%20--%u6253%u53702%0A%0Aprint%28t%5B10%5D%29%0A--%u56E0%u4E3A%u4E0D%u5B58%u5728%uFF0C%u6253%u5370nil%0A

以上就是table最简单的一个例子了,就是当作数组来用(注意,一般语言中的数组基本都为不可变长度,这里的table为可变长度)

下面你需要完成:

  • 新建一个table,名为cards,存入1-10十个数字

  • 将第3个元素与第7个元素交换

  • 将第9个元素与第2个元素交换

  • 增加第11个变量,值为23

  • 惊喜1号券码:GWAUFE971381


--请补全代码

cards =






2

简单table



上一节里,我们将table来表示数组,实际上,table中可以包括任意类型的数据

比如我们可以在table中放置numberstring数据,类似下面的代码:

t = {"abc",223,",..a",123123}


我们甚至能在里面放function变量:

t = {    

   function() return 123 end,    

   function() print("abc") end,    

   function(a,b) return a+b end,    

   function() print("hello world") end, } t[1]() t[2]() t[3]() t[4]()


Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%0A%20%20%20%20function%28%29%20return%20123%20end%2C%0A%20%20%20%20function%28%29%20print%28%22abc%22%29%20end%2C%0A%20%20%20%20function%28a%2Cb%29%20return%20a+b%20end%2C%0A%20%20%20%20function%28%29%20print%28%22hello%20world%22%29%20end%2C%0A%7D%0At%5B1%5D%28%29%0At%5B2%5D%28%29%0At%5B3%5D%28%29%0At%5B4%5D%28%29%0A

这些table访问每个元素的方式仍然是直接用下标,并且也能用下标来进行修改。

下面你需要完成:

  • 新建一个table,名为funcList,并实现以下功能

  • 调用funcList[1](a,b),返回a和b的乘积

  • 调用funcList[2](a,b),返回a减b的差

  • 调用funcList[3](a),返回a的相反数(-a)



--请补全代码

funcList = { }

--同学,这是2号券码:GIPIYE639553

a,b = 1,2--提供两个数

print("a,b值为",a,b)

print("a和b的乘积:",funcList[1](a,b))

print("a和b的差:",funcList[2](a,b))

print("a和相反数:",funcList[3](a))



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u8BF7%u8865%u5168%u4EE3%u7801%0AfuncList%20%3D%20%7B%0A%0A%7D%0A%0Aa%2Cb%20%3D%201%2C2--%u63D0%u4F9B%u4E24%u4E2A%u6570%0Aprint%28%22a%2Cb%u503C%u4E3A%22%2Ca%2Cb%29%0Aprint%28%22a%u548Cb%u7684%u4E58%u79EF%uFF1A%22%2CfuncList%5B1%5D%28a%2Cb%29%29%0Aprint%28%22a%u548Cb%u7684%u5DEE%uFF1A%22%2CfuncList%5B2%5D%28a%2Cb%29%29%0Aprint%28%22a%u548C%u76F8%u53CD%u6570%uFF1A%22%2CfuncList%5B3%5D%28a%29%29%0A






3

table下标



在前两节,我们的table都只是一些简单的List(列表),每个元素的下标都是自动从1排列的。

实际上在Lua中,下标可以直接在声明时进行指定,像下面这样:


t = {6,7,8,9}

--上面和下面的代码等价

t = {    [1] = 6,    [2] = 7,    [3] = 8,    [4] = 9, }

--甚至你可以跳过某些下标

t = {    [1] = 6,    [3] = 7,    [5] = 8,    [7] = 9, }

print(t[7])

--输出9


--在声明后赋予元素值也是可以的

t = {}--空的table

t[101] = 10

print(t[101])

--输出10

--可以输出五折券吗?3号券码来了:HFIXSR610571



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B6%2C7%2C8%2C9%7D%0A--%u4E0A%u9762%u548C%u4E0B%u9762%u7684%u4EE3%u7801%u7B49%u4EF7%0At%20%3D%20%7B%0A%20%20%20%20%5B1%5D%20%3D%206%2C%0A%20%20%20%20%5B2%5D%20%3D%207%2C%0A%20%20%20%20%5B3%5D%20%3D%208%2C%0A%20%20%20%20%5B4%5D%20%3D%209%2C%0A%7D%0A%0A--%u751A%u81F3%u4F60%u53EF%u4EE5%u8DF3%u8FC7%u67D0%u4E9B%u4E0B%u6807%0At%20%3D%20%7B%0A%20%20%20%20%5B1%5D%20%3D%206%2C%0A%20%20%20%20%5B3%5D%20%3D%207%2C%0A%20%20%20%20%5B5%5D%20%3D%208%2C%0A%20%20%20%20%5B7%5D%20%3D%209%2C%0A%7D%0Aprint%28t%5B7%5D%29%0A--%u8F93%u51FA9%0A%0A--%u5728%u58F0%u660E%u540E%u8D4B%u4E88%u5143%u7D20%u503C%u4E5F%u662F%u53EF%u4EE5%u7684%0At%20%3D%20%7B%7D--%u7A7A%u7684table%0At%5B101%5D%20%3D%2010%0Aprint%28t%5B101%5D%29%0A--%u8F93%u51FA10%0A

下面你需要:

  • 新建一个变量t,并按下面的格式声明

  • 下标为1的元素,值为123(number)

  • 下标为13的元素,值为"abc"(string)

  • 下标为666的元素,值为"666"(string)

  • 你也可以先买买买,4号券码:OKGOJE392474


--请补全代码

t = { }


print("下标为1的元素:",t[1],type(t[1]))

print("下标为13的元素:",t[13],type(t[13]))

print("下标为666的元素:",t[666],type(t[666]))



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u8BF7%u8865%u5168%u4EE3%u7801%0At%20%3D%20%7B%0A%0A%7D%0A%0Aprint%28%22%u4E0B%u6807%u4E3A1%u7684%u5143%u7D20%uFF1A%22%2Ct%5B1%5D%2Ctype%28t%5B1%5D%29%29%0Aprint%28%22%u4E0B%u6807%u4E3A13%u7684%u5143%u7D20%uFF1A%22%2Ct%5B13%5D%2Ctype%28t%5B13%5D%29%29%0Aprint%28%22%u4E0B%u6807%u4E3A666%u7684%u5143%u7D20%uFF1A%22%2Ct%5B666%5D%2Ctype%28t%5B666%5D%29%29%0A






4

下标进阶



在上一节,我们学习了如何自定义下标,其实在Lua中,下标也可以是字符串,如下面的例子。

t = {    ["apple"] = 10,    banana = 12,    pear = 6, }

--使用["下标"] = 值

--和  下标 = 值

--都是正确写法

--当第二种方式有歧义时,应该用第一种方式


--可以用下面两种方式访问:

print(t["apple"])

--输出10

print(t.apple)

--输出10

--当第二种方式有歧义时,应该用第一种方式



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%0A%20%20%20%20%5B%22apple%22%5D%20%3D%2010%2C%0A%20%20%20%20banana%20%3D%2012%2C%0A%20%20%20%20pear%20%3D%206%2C%0A%7D%0A--%u4F7F%u7528%5B%22%u4E0B%u6807%22%5D%20%3D%20%u503C%0A--%u548C%20%20%u4E0B%u6807%20%3D%20%u503C%0A--%u90FD%u662F%u6B63%u786E%u5199%u6CD5%0A--%u5F53%u7B2C%u4E8C%u79CD%u65B9%u5F0F%u6709%u6B67%u4E49%u65F6%uFF0C%u5E94%u8BE5%u7528%u7B2C%u4E00%u79CD%u65B9%u5F0F%0A%0A--%u53EF%u4EE5%u7528%u4E0B%u9762%u4E24%u79CD%u65B9%u5F0F%u8BBF%u95EE%uFF1A%0Aprint%28t%5B%22apple%22%5D%29%0A--%u8F93%u51FA10%0Aprint%28t.apple%29%0A--%u8F93%u51FA10%0A--%u5F53%u7B2C%u4E8C%u79CD%u65B9%u5F0F%u6709%u6B67%u4E49%u65F6%uFF0C%u5E94%u8BE5%u7528%u7B2C%u4E00%u79CD%u65B9%u5F0F%0A


可见,在使用string作为下标时,table的灵活性提升了一共数量级。

string作为下标时,也可以动态赋值:

t = {} -- 空table

t["new"] = "新的值"

print(t.new)

--输出 新的值



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%7D%20--%20%u7A7Atable%0At%5B%22new%22%5D%20%3D%20%22%u65B0%u7684%u503C%22%0Aprint%28t.new%29%0A--%u8F93%u51FA%20%u65B0%u7684%u503C%0A


下面你需要完成:

  • 新建table变量t

  • 下标为apple的元素,值为123(number)

  • 下标为banana的元素,值为"abc"(string)

  • 下标为1@1的元素,值为"666"(string)

--请补全代码

t = { }


print("下标为apple的元素:",t["apple"],type(t["apple"]))

print("下标为banana的元素:",t["banana"],type(t["banana"]))

print("下标为1@1的元素:",t["1@1"],type(t["1@1"]))


--嗨~我是5号券码:KSPAAF395395




Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u8BF7%u8865%u5168%u4EE3%u7801%0At%20%3D%20%7B%0A%0A%7D%0A%0Aprint%28%22%u4E0B%u6807%u4E3Aapple%u7684%u5143%u7D20%uFF1A%22%2Ct%5B%22apple%22%5D%2Ctype%28t%5B%22apple%22%5D%29%29%0Aprint%28%22%u4E0B%u6807%u4E3Abanana%u7684%u5143%u7D20%uFF1A%22%2Ct%5B%22banana%22%5D%2Ctype%28t%5B%22banana%22%5D%29%29%0Aprint%28%22%u4E0B%u6807%u4E3A1@1%u7684%u5143%u7D20%uFF1A%22%2Ct%5B%221@1%22%5D%2Ctype%28t%5B%221@1%22%5D%29%29%0A





5

table小测验1



下面的代码,将会打印什么?

t = {    apple = {        price = 7.52,        weight = 2.1,    },    banana = {        price = 8.31,        weight = 1.4,        year = '2018'    },    year = '2019'}print(    t.price,    t.apple.price,    t.banana.weight,    t.year )


Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%0A%20%20%20%20apple%20%3D%20%7B%0A%20%20%20%20%20%20%20%20price%20%3D%207.52%2C%0A%20%20%20%20%20%20%20%20weight%20%3D%202.1%2C%0A%20%20%20%20%7D%2C%0A%20%20%20%20banana%20%3D%20%7B%0A%20%20%20%20%20%20%20%20price%20%3D%208.31%2C%0A%20%20%20%20%20%20%20%20weight%20%3D%201.4%2C%0A%20%20%20%20%20%20%20%20year%20%3D%20%272018%27%0A%20%20%20%20%7D%2C%0A%20%20%20%20year%20%3D%20%272019%27%0A%7D%0Aprint%28%0A%20%20%20%20t.price%2C%0A%20%20%20%20t.apple.price%2C%0A%20%20%20%20t.banana.weight%2C%0A%20%20%20%20t.year%0A%29%0A





6

table小测验2



下面的代码,将会打印什么?

t = {    {        price = 7.52,        weight = 2.1,    },    {        price = 8.31,        weight = 1.4,        year = '2018'    },    year = '2019'}print(    t["price"],    t[1].price,    t[2].weight,    t["year"] )


Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20price%20%3D%207.52%2C%0A%20%20%20%20%20%20%20%20weight%20%3D%202.1%2C%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20price%20%3D%208.31%2C%0A%20%20%20%20%20%20%20%20weight%20%3D%201.4%2C%0A%20%20%20%20%20%20%20%20year%20%3D%20%272018%27%0A%20%20%20%20%7D%2C%0A%20%20%20%20year%20%3D%20%272019%27%0A%7D%0Aprint%28%0A%20%20%20%20t%5B%22price%22%5D%2C%0A%20%20%20%20t%5B1%5D.price%2C%0A%20%20%20%20t%5B2%5D.weight%2C%0A%20%20%20%20t%5B%22year%22%5D%0A%29%0A





7

Lua全局变量与table



在前面我们知道了,在table中,可以直接用table名[下标]table名.string下标来访问元素。

实际上,在Lua中,所有的全局变量全部被存放在了一共大table中,这个table名为:_G

我们可以用下面的例子来示范:



n = 123--新建变量

print(n)--输出123

print(_G.n)--输出123


_G.abc = 1--相当于新建全局变量

print(abc)--输出1


_G["def"] = 23--相当于新建全局变量

print(def)--输出23


--甚至你可以像下面这样

_G.print("hello")

_G["print"]("world")



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?n%20%3D%20123--%u65B0%u5EFA%u53D8%u91CF%0Aprint%28n%29--%u8F93%u51FA123%0Aprint%28_G.n%29--%u8F93%u51FA123%0A%0A_G.abc%20%3D%201--%u76F8%u5F53%u4E8E%u65B0%u5EFA%u5168%u5C40%u53D8%u91CF%0Aprint%28abc%29--%u8F93%u51FA1%0A%0A_G%5B%22def%22%5D%20%3D%2023--%u76F8%u5F53%u4E8E%u65B0%u5EFA%u5168%u5C40%u53D8%u91CF%0Aprint%28def%29--%u8F93%u51FA23%0A%0A--%u751A%u81F3%u4F60%u53EF%u4EE5%u50CF%u4E0B%u9762%u8FD9%u6837%0A_G.print%28%22hello%22%29%0A_G%5B%22print%22%5D%28%22world%22%29%0A

现在,你明白为什么说万物基于table了吧?

6号券码请领取:YRFUBW387109


你需要完成下面的任务:

  • 已知有一个全局变量,名为@#$

  • 请新建一个变量result

  • @#$变量里的值赋值给result



_G["@#$"] = 123


result = --请补全代码

print("result值为",result)



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?_G%5B%22@%23%24%22%5D%20%3D%20123%0A%0Aresult%20%3D%20--%u8BF7%u8865%u5168%u4EE3%u7801%0Aprint%28%22result%u503C%u4E3A%22%2Cresult%29%0A






8

table小测验3



请新建一个名为t的table,满足以下要求

  • t[10]可获得number类型数据100

  • t.num可获得number类型数据12

  • t.abc[3]可获得string类型数据abcd

  • t.a.b.c可获得number类型数据789


--请补全代码

t = { }

--7号券码在这里:CUBPYC397124

print("t[10]可获得number类型数据100:",t[10],type(t[10]))

print("t.num可获得number类型数据12:",t.num,type(t.num))

print("t.abc[3]可获得string类型数据abcd:",t.abc[3],type(t.abc[3]))

print("t.a.b.c可获得number类型数据789:",t.a.b.c,type(t.a.b.c))



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u8BF7%u8865%u5168%u4EE3%u7801%0At%20%3D%20%7B%0A%0A%7D%0A%0Aprint%28%22t%5B10%5D%u53EF%u83B7%u5F97number%u7C7B%u578B%u6570%u636E100%3A%22%2Ct%5B10%5D%2Ctype%28t%5B10%5D%29%29%0Aprint%28%22t.num%u53EF%u83B7%u5F97number%u7C7B%u578B%u6570%u636E12%3A%22%2Ct.num%2Ctype%28t.num%29%29%0Aprint%28%22t.abc%5B3%5D%u53EF%u83B7%u5F97string%u7C7B%u578B%u6570%u636Eabcd%3A%22%2Ct.abc%5B3%5D%2Ctype%28t.abc%5B3%5D%29%29%0Aprint%28%22t.a.b.c%u53EF%u83B7%u5F97number%u7C7B%u578B%u6570%u636E789%3A%22%2Ct.a.b.c%2Ctype%28t.a.b.c%29%29%0A






9

table.concat



table.concat (table [, sep [, i [, j ] ] ])

将元素是string或者number类型的table,每个元素连接起来变成字符串并返回。

可选参数sep,表示连接间隔符,默认为空。

ij表示元素起始和结束的下标。

下面是例子:



local a = {1, 3, 5, "hello" }

print(table.concat(a))

print(table.concat(a, "|"))


-->打印的结果:

--135hello

--1|3|5|hello

--看这里,8号券码来了:OUPCKU222446



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?local%20a%20%3D%20%7B1%2C%203%2C%205%2C%20%22hello%22%20%7D%0Aprint%28table.concat%28a%29%29%0Aprint%28table.concat%28a%2C%20%22%7C%22%29%29%0A%0A--%3E%u6253%u5370%u7684%u7ED3%u679C%uFF1A%0A--135hello%0A--1%7C3%7C5%7Chello%0A


请完成下面的任务:

  • 已知table变量t,

  • 将t中的结果全部连起来

  • 间隔符使用,

  • 并使用print打印出来

t = {"a","b","c","d"}

print("连接结果:")

--补全代码


Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B%22a%22%2C%22b%22%2C%22c%22%2C%22d%22%7D%0Aprint%28%22%u8FDE%u63A5%u7ED3%u679C%uFF1A%22%29%0A--%u8865%u5168%u4EE3%u7801%0A







10

table删减



table.insert (table, [pos ,] value)

在(数组型)表 table 的 pos 索引位置插入 value,其它元素向后移动到空的地方。pos 的默认值是表的长度加一,即默认是插在表的最后。


table.remove (table [, pos])


在表 table 中删除索引为 pos(pos 只能是 number 型)的元素,并返回这个被删除的元素,它后面所有元素的索引值都会减一。pos 的默认值是表的长度,即默认是删除表的最后一个元素。


下面是例子:

同学,速领9号券码:WKASTF273244



local a = {1, 8}             --a[1] = 1,a[2] = 8

table.insert(a, 1, 3)   --在表索引为1处插入3

print(a[1], a[2], a[3])

table.insert(a, 10)    --在表的最后插入10

print(a[1], a[2], a[3], a[4])


-->打印的结果:

--3    1    8

--3    1    8    10


local a = { 1, 2, 3, 4}

print(table.remove(a, 1)) --删除速索引为1的元素

print(a[1], a[2], a[3], a[4])


print(table.remove(a))   --删除最后一个元素

print(a[1], a[2], a[3], a[4])


-->打印的结果:

--1

--2    3    4    nil

--4

--2    3    nil    nil



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?local%20a%20%3D%20%7B1%2C%208%7D%20%20%20%20%20%20%20%20%20%20%20%20%20--a%5B1%5D%20%3D%201%2Ca%5B2%5D%20%3D%208%0Atable.insert%28a%2C%201%2C%203%29%20%20%20--%u5728%u8868%u7D22%u5F15%u4E3A1%u5904%u63D2%u51653%0Aprint%28a%5B1%5D%2C%20a%5B2%5D%2C%20a%5B3%5D%29%0Atable.insert%28a%2C%2010%29%20%20%20%20--%u5728%u8868%u7684%u6700%u540E%u63D2%u516510%0Aprint%28a%5B1%5D%2C%20a%5B2%5D%2C%20a%5B3%5D%2C%20a%5B4%5D%29%0A%0A--%3E%u6253%u5370%u7684%u7ED3%u679C%uFF1A%0A--3%20%20%20%201%20%20%20%208%0A--3%20%20%20%201%20%20%20%208%20%20%20%2010%0A%0A%0Alocal%20a%20%3D%20%7B%201%2C%202%2C%203%2C%204%7D%0Aprint%28table.remove%28a%2C%201%29%29%20--%u5220%u9664%u901F%u7D22%u5F15%u4E3A1%u7684%u5143%u7D20%0Aprint%28a%5B1%5D%2C%20a%5B2%5D%2C%20a%5B3%5D%2C%20a%5B4%5D%29%0A%0Aprint%28table.remove%28a%29%29%20%20%20--%u5220%u9664%u6700%u540E%u4E00%u4E2A%u5143%u7D20%0Aprint%28a%5B1%5D%2C%20a%5B2%5D%2C%20a%5B3%5D%2C%20a%5B4%5D%29%0A%0A--%3E%u6253%u5370%u7684%u7ED3%u679C%uFF1A%0A--1%0A--2%20%20%20%203%20%20%20%204%20%20%20%20nil%0A--4%0A--2%20%20%20%203%20%20%20%20nil%20%20%20%20nil%0A

请完成下面的任务:

  • 已知table变量t

  • 去除t中的第一个元素

  • 然后这时,在t的第三个元素前,加上一个number变量,值为810



t = {1,2,3,4,5,6,7,8,9}


--补全代码


print("第一个元素应为2:",t[1])

print("第三个元素应为810:",t[3])



Table — 白话Lua系列零基础教程 第七期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?t%20%3D%20%7B1%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%7D%0A%0A--%u8865%u5168%u4EE3%u7801%0A%0Aprint%28%22%u7B2C%u4E00%u4E2A%u5143%u7D20%u5E94%u4E3A2%uFF1A%22%2Ct%5B1%5D%29%0Aprint%28%22%u7B2C%u4E09%u4E2A%u5143%u7D20%u5E94%u4E3A810%uFF1A%22%2Ct%5B3%5D%29%0A


以上就是table相关的内容

你都掌握了吗

下一期2020年见啦


以下参与“稀饭放姜”名称含义竞猜的同学

快来领奖哦


Table — 白话Lua系列零基础教程 第七期


柴松

砖家的砖

朱亮~漂流人生

精彩昊Sir

金宗林

珍重


请于2020.01.10前



点击下图或文末“阅读原文”




- 粉丝专有福利 -



请由公众号菜单“合宙商城”进入或长按下图识别二维码直达,领取粉丝专有福利↓↓↓


Table — 白话Lua系列零基础教程 第七期



- 往期官方教程 -



刘晨旭白话Lua零基础系列教程:



●  

●  

●  

●  

●  

●  




●  

●  

●  

●  

● 

●  

●  

● 


细心的你一定发现前面只有9个券码对不对?

第10个券码在这里哦:UXMKPV516282



点亮在看,和更多人一起了解物联网

↓↓↓

以上是关于Table — 白话Lua系列零基础教程 第七期的主要内容,如果未能解决你的问题,请参考以下文章

白话Lua系列零基础教程 — 初识Lua

分支判断 — 白话Lua系列零基础教程 第五期

逻辑运算 — 白话Lua系列零基础教程 第四期

白话Lua系列零基础教程 — 变量

第12阶段 SRC安全应急响应中心漏洞挖掘视频教程第七期课程 9.代码执行和命令执行漏洞基础与SRC挖掘经验

cocos2d-x-lua基础系列教程六(lua-table增删改查)