lua中遍历table中还有多个table??? 5C

local ta1 = {name = {"jsck","taome"},age={22,34}}
根据键获取值??

lua

2个回答

这个是table嵌套等价于
local t={}
t["name"] = {"jsck", "taome"}
t["age"] = {22, 34}

如果name和age总是一一对应的话,我建议把表的结构改成

local ta1 = {
    { name="jsck", age=22 }, 
    { name="taome", age=34}, 
    ......
}

这样在遍历的时候只需要:

for i, v in ipairs(ta1)
    -- 此时每个v就是一组数据
    -- v.name和v.age就是name和age属性
end

如果按题目中的结构,应该可以这样遍历:

for i, v in ipairs(ta1.name)
    -- v是name,ta1.age[i]是age
end
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Lua中遍历table表
我们简单看一下pairs、ipairs以及自定义按key值顺序遍历的pairsBykeys这3中方式: -- table表的操作 function pairsBykeys(t) local a = {} for n in pairs(t) do a[#a+1] = n end table.sort(a) local i = 0 re...
浅析Lua中table的遍历
当我在工作中使用lua进行开发时,发现在lua中有4种方式遍历一个table,当然,从本质上来说其实都一样,只是形式不同,这四种方式分别是: forkey,valueinpairs(tbtest)do XXXendforkey,valueinipairs(tbtest)do XXXendfori=1,#(tbtes...
浅析Lua中table的遍历
转载 浅析Lua中table的遍历 http://rangercyh.blog.51cto.com/1444712/1032925 lua面向对象编程之点号与冒号的差异详细比较 http://www.cnblogs.com/youxilua/archive/2011/07/28/2119059.html lua中的面向对象模拟,类,继承,多态 http://bl...
lua遍历table方式
1.key valuefor partId, partDict in pairs( Dict.TreasureItemMap ) do end 2.依次遍历for i, partDict in ipairs( Dict.TreasureItemMap ) do end 3.知道大小后遍历 local size = #Dict.Treas
Lua table表的遍历
local aa={"xuhaitao","xuhaihuan"}; for index,value in ipairs(aa) do print(index,value); end print("------------------------");for i=1,table.getn(aa) do print(aa[i]); end FR:海涛高软(hunk xu)
c遍历lua中table的方法
c遍历lua中table的方法遍历一个table,肯定是不知道table的每个key的,所以lua_getfield肯定是不可行的。要遍历table,最主要的是lua_next函数,该函数主要接受一个int参数,代表当前table所在的索引,索引之上应该需要一个key,每次lua_next都会从当前的key遍历下一个key,于是我们想要得到第一个key,则只需要压入一个nil就行了。当lua_nex
lua中遍历table的几种方式比较
前两种是泛型遍历,后两种是数值型遍历。当然你还会说lua的table遍历还有很多种方法啊,没错,不过最常见的这些遍历确实有必要弄清楚。 这四种方式各有特点,由于在工作中我几乎每天都会使用遍历table的方法,一开始也非常困惑这些方式的不同,一段时间后才渐渐明白,这里我也是把自己的一点经验告诉大家,对跟我一样的lua初学者也许有些帮助 首先要明确一点,就是lua中table并非像是C/C++中的数组一样是顺序存储的,准确来说lua中的table更加像是C++中的map,通过Key对应存储Val
lua 中table 的四种遍历方式
使用ipairs 迭代器材遍历: 1.将所有table中的key值排列。 2.找到key唯1的索引。 3.向后递增1,如果key值不存在,则结束遍历。 总结: 这种迭代器是用用来遍历数组的 使用pairs 迭代器遍历: 1.将所有table中的key值排列 2.遍历table中...
【Lua】Lua中的Table操作
Lua中table类似与C#种的字典,其实就是一个key-value键值对数据结构.来学习下table基本操作 Table的创建 myTable = {} --表名后面使用{}赋值,表示一个空的表 myTable = {name="海洋",age=18,isMan=true} --创建时候就添
lua中的table的应用
在lua中,table作为一个很重要的数据结构,用来存放具有一定联系的相关的数据,将相关的数据以一定的结构存放在table中,用的时候在table中取出来。 1.创建table的方式 (1)先创建table,并赋值,例如: --lua local city = {[1] = "北京",[2] = "上海",[3] = "天津"} local city1 = {"北京","上海",
Lua中table的常用操作
mark
lua中table总结
table 在 Lua 里是一种重要的数据结构,它可以说是其他数据结构的基础,通常的数组、记录、线性表、队列、集合等数据结构都可以用 table 来表示,甚至连全局变量(_G)、模块、元表(metatable)等这些重要的 Lua 元素都是 table 的结构。可以说,table  是一个强大而又神奇的东西。 table 特性 在之前介绍 Lua 数据类型时,也说过了 table 的一
lua中table的常用方法
table的五大操作方法: 1:table.sort() language = {"lua","java","c#","c++"} table.sort(language) --只有table一个参数,使用lua默认的排序方式排序 for i, v in ipairs(language) do -- print(v) --输出c# c++ java lua end local func...
lua中的table库
--[[ lua中的table库 1、插入和删除函数 2、排序 3、链接 4、删除 5、获取table的长度 ]] --[[ t = { 1, 2, 3 } --insert --table.insert(table,[pos,]value) table.insert(t,1,10) table.insert(t, 12) --
lua中的table总结
table(表) table非常灵活,可以用table表示普通数组,队列,符号表,集合,记录等等数据结构。 lua的table实现了关联数组,所谓关联数组。就是可以用各种特殊的索引去索引这个数组,table没有固定个的长度,可以动态的添加元素到一个table中,如果一个table的长度为零了,那个lua的垃圾回收机制会自动销毁这个table并复用他的内存,在lua中,table既不是值也不是变
lua中的table类型
lua中的table类型确实很灵活,灵活到大家发挥想象力,随意发挥 --lua中的表太强大了 t={} t.a=111 t["b"] =222 t[-3] ="bbb" t.t={1,2,3,4,5} -- 定义一个函数 function t.fun(p) io.write("\n这是第一个函数! ",p) end t.fun2 = functi...
lua中打印table
lua的打印写了一边又一边,我去,每次都要考虑一下,花写时间去写,这个有点,那个啥,扔这里 local string_format = string.format; local table_insert = table.insert; function dump_r(t) local sp = " "; local function do_print(tt, l) ...
LUA怎么获得table中的table
就是table中包含table,我是用for循环然后找到那个table,在赋值给temp =,有没有好一点的方法,比如那个函数可以直接得到。
Lua中实现table的打印输出(print table)
介绍如何实现Print一个Table,做测试时比较实用的小函数。
遍历table中的行
Collection<?> holdingTableIds=holdingTable.getItemIds(); Iterator it = holdingTableIds.iterator(); //  获得一个迭代子    String str=""; while(it.hasNext()) { Object obj = it.next(); //  得到下一个元素   ...
lua遍历table的几种方式
lua遍历table的几种方式 lua中的table是一张hash表,遍历table是一个非常常见的操作,但是由于table其中的内容不同,其遍历方式也不尽相同;而且若使用了错误的遍历方式,还会导致意外中断遍历,让结果不符合预期。 本文主要是简单介绍一下lua table的几种遍历方式 总览 lua常用的遍历方式有三种,使用ipairs遍历、使用pairs遍历、使用i=1,#xxx遍历...
C++遍历Lua二维table
#include #include   using namespace std;  #include "lua.hpp" lua_State *L;   int getfield(lua_State *L,int key1,int key2)  {      int result = 0;    lua_pushnumber(L,key1);  lua_gettable(
Lua中的table函数库.pdf Lua初学 table 经典有用
Lua中的table函数库.pdf Lua初学 table 经典有用 有用 ,分享一下。
lua中的table使用陷阱
最近在使用lua开发的过程中,遇到了一个由于语言机制导致的bug,具体表现就是,我的配置文件中存了个两个表项,在用lua加载配置文件内容之后,返回的表长度竟然是1,然后导致后面的判断都出错了,在初次调试这个bug的时候完全是百思不得其解,把配置文件看了又看,确实有两个表项没错,但是通过#运算符得到的表长度始终是1,于是我用公司同事写的一个打印table模块将返回的table的键和值都打印出来看了一
善于利用Lua中的table
因为lua中需要对unity物体控制时,需要先声明,这样的话,我们用到的物体很多时候,脚本开头看起来就会很繁杂,这时候我们可以声明一个table统一管理,这样代码看起来就会很整洁 然后在初始化时候,我们只要直接对table赋值,然后获取unity中正确的物体就行,这里跟之前初始化组件一样,只是通过table去索引,其实这样看起来更整洁啦 这是我的第一篇博客,以后会坚持更...
Lua中打印Table的方法
print东西如果很多 会很消耗效率 不需要的时候把前面三行的return打开就可以了 这个方法可以循环遍历Table进行打印 Table内的所有东西都会显示出来 function pTable(Lua_table)     -- do     --     return     -- end         local function
lua中table引用问题
最近做了一个养成系统,今天发现一个bug。 大概是我在我的界面中引用(table) PlayerInfo。 每次打开界面时引用了一下,为了自己用起来放便。m_playerInfo = PlayerInfo 然后突然发现每次切场景之后,界面中引用的m_playerInfo中的数据不会再更新了。 后来找到原因,是切场景之后被清空并重新赋值了。PlayerInfo = {} m_playerInfo
lua 字符串截取 存入table中
--定义测试字符串 local str = "abc,123,345" splitlist = {} string.gsub(str, '[^,]+', function(w) table.insert(splitlist, w) end ) --可以用过打印,看到字符串已经按照“,”截取,并且存入table中
LUA中table的排序问题
毕业了,正式工作了,随便写写。   目前在实习,接触的是U3D游戏开发,设计到语言有erlang,C#,lua。最近在做背包的排序的时候遇到的一个小问题就贴出来了。   查看官方文档   第一个参数是一个table,第二个参数是外部函数,如下代码table.sort(showList, sortFunc); local function itemSortFunc(item1, item
lua中table的基础用法
lua,table
c++读取lua中的table
c++代码static int l_sin(lua_State *tolua_S){ /*double d = luaL_checknumber(L, 1); lua_pushnumber(L, d + 100); return 1;*/ std::vector<int> agr1; lua_pushnil(tolua_S); int index = 1;
Lua中table的基本用法
个人体会,有错就认,立正挨打 创建 local a = {} 初始化 local a = {["1"] = 12, ["zhuojian"] = 99, [3] = "hello"} 这里有两种索引:字符串型的"1"和"zhuojian"数字型的3 table支持几乎是所有类型的下标,包括函数。 简化 local a = {["1"] = 12, zhuojian = 99,
Lua中table库函数详解
table.concat(table,sep,start,end)table.concat()函数列出table中数组部分从下表start到end的所有元素,元素中间以字符sep隔开,默认字符为空字符,其中table参数必填,其余三个参数可以不填。例:t={&quot;first&quot;,&quot;blog&quot;}print(table.concat( t, &quot; &quot;, 1, 2 ))输出结果:first blog...
Lua 中 table(表) 的简单使用
Lua table(表) table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数字、字典等。 Lua table 使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil。 Lua table 是不固定大小的,你可以根据自己需要进行扩容。table(表)的构造 构造器是创建和初始化表的表达式。表是Lua特有的功能强大的东西。最简单的构造函数是{},用来
Lua中table类型源码分析
tables的实现被分成了两个部分: 核心由ltable.c完成,提供了table的基本存取方法, 外部table库(ltablib.c)提供了辅助操作接口(concat, foreach, foreachi, getn, maxn, insert, remove, setn, sort). ltable.c table的主要代码在这里 lobject.h lua的基础对象的定义,包括table
LUA(>=5.3)中的table函数库
table.concat(list[,sep[,i[,j]]]) 函数作用: 连接value(作用和 .. 类似) 函数参数: 除了指定的list,其他的都是可选参数(依次为:分隔符(默认为空),开始位置(默认为1),结束位置(默认为#table)) 注意:表的key不要有空的,否则后面的数值都读不出来 函数实例:  tbl = {"a","b","c"} print(table.con
如何遍历table中的服务器控件?
[code=C#] foreach (Control c in Page.FindControl("test").Controls)rn rn rn string ti = c.GetType().ToString();rn if (c is TextBox)rn rn string id = ((TextBox)c).ID;rn rn rn [/code]rntest是table的名称rn请问这样子为什么不能遍历?rn该如何遍历表中的table?
怎样遍历html中的table??
我想确定某一行是否存在,需要遍历这个table,应该怎样做??
table中的check列遍历
思路:遍历被选中的checkbox对象→根据选中项筛选出需要删除的行→删除行。实例说明如下: 1、HTML结构 123 456 789 101112 2、jquery代码 $(function(){ $("input[type='button']").click(function() { $("input[name='test']:checked").each(fun
遍历table中的tr td
function bianli() { $("#tset").find("tr").each(function() { var tdArr = $(this).children(); var history_income_type = tdArr.eq(0).find("input").val(); //收入类
相关热词 c# login 居中 c# 考试软件 c# 自然语言分析 c# 分段读取文件 c# 泛型反射 c#打断点 c# 时间转多少秒 c# 线程函数加参数 c# modbus 读取 c#查询集合表