Lua)) 如何循环 table of table 并得到特定的 属性?
Lua)) how to loop table of table and get a specific property?
我真的是lua的新手。我有这个 lua 代码
local gun_info = {
g_sword={rate=0.5;spd=0;dmg=1;ammo=1;};
g_pistol={rate=0.5;spd=5;dmg=1;ammo=40;};
g_knife={rate=0.8;spd=5;dmg=1;ammo=1;};
g_shuriken={rate=0.3;spd=5;dmg=1;ammo=40;};
g_bomb={rate=0.8;spd=5;dmg=1;ammo=20;};
};
我只想获取每个弹药的价值。不需要其他属性。
for k, v in pairs(gun_info) do
print(k, v[1], v[2], v[3], v[4], v[5])
end
这会打印出整个表格,但我只需要 ammos 的值
在 table 变量之间使用逗号而不是分号。使用分号在语法上没有错误,但在 Lua 中是可选的。分号通常用于分隔一行中写的多个语句。
您可以通过索引table
的键直接访问变量ammo
for k, v in pairs(gun_info) do
print(k, v.ammo)
end
v.ammo 和 v[ammo] 在 Lua 中不相同。
注意:元素在遍历中出现的顺序不会和你定义的一样,每次都会产生不同的顺序。这是由于在 Lua.
中实施 table 的方式所致
我真的是lua的新手。我有这个 lua 代码
local gun_info = {
g_sword={rate=0.5;spd=0;dmg=1;ammo=1;};
g_pistol={rate=0.5;spd=5;dmg=1;ammo=40;};
g_knife={rate=0.8;spd=5;dmg=1;ammo=1;};
g_shuriken={rate=0.3;spd=5;dmg=1;ammo=40;};
g_bomb={rate=0.8;spd=5;dmg=1;ammo=20;};
};
我只想获取每个弹药的价值。不需要其他属性。
for k, v in pairs(gun_info) do
print(k, v[1], v[2], v[3], v[4], v[5])
end
这会打印出整个表格,但我只需要 ammos 的值
在 table 变量之间使用逗号而不是分号。使用分号在语法上没有错误,但在 Lua 中是可选的。分号通常用于分隔一行中写的多个语句。
您可以通过索引table
的键直接访问变量ammo
for k, v in pairs(gun_info) do
print(k, v.ammo)
end
v.ammo 和 v[ammo] 在 Lua 中不相同。
注意:元素在遍历中出现的顺序不会和你定义的一样,每次都会产生不同的顺序。这是由于在 Lua.
中实施 table 的方式所致