我真是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的值
答案 0 :(得分:1)
在表变量之间使用逗号而不是分号。使用分号在语法上不是错误的,但在Lua中是可选的。分号通常用于分隔用单行写的多个语句。
您可以通过索引表格的键
直接访问变量ammo
for k, v in pairs(gun_info) do
print(k, v.ammo)
end
v.ammo和v [ammo]在Lua中并不相同。
注意:元素在遍历中的显示顺序与您定义的顺序不同,并且每次都可以生成不同的顺序。这是由于在Lua中实现表的方式。