t = {
{ 7, "123" },
{ 8, "234" },
{ 9, "345" }
}
t = table.remove(t, 1) -- This thing brokes everything, but should delete first group
for k, v in ipairs(t) do
print(k, v[1], v[2])
end
这件事只是讨厌我,我和它一起战斗了4个小时并且没有从死点开始。尝试了几个不同的循环,不同的字母位置(v[1] -> k[1]
等),没有任何帮助。
答案 0 :(得分:3)
table.remove
返回已删除的元素,而不是更新的表。只是不要指定t = table.remove(t, 1)
,而是丢弃返回值,即没有任何作业的裸table.remove(t, 1)
。
另见the manual:
table.remove(table [,pos])
从表中移除位置
pos
处的元素,如果需要,向下移动其他元素以关闭空格。返回已删除元素的值。pos
的默认值为n
,其中n
是表的长度,因此调用table.remove(t)
会删除表t
的最后一个元素。
t = {
{ 7, "123" },
{ 8, "234" },
{ 9, "345" }
}
table.remove(t, 1)
for k, v in pairs(t) do
print(k, v[1], v[2])
end