在 lua 中使用循环更改 table 值
Change a table value with a loop in lua
我正在尝试更改 table 中的值,但我不能。
这是我的代码:
table = {{x=2}, {y=3}, {z=2}}
function printTabValue(tab, index)
for k, v in pairs(tab[index]) do
print(k, v)
end
end
for k, v in pairs(table[1]) do
print(k,v)
table[k] = 5
end
printTabValue(table,1)
我得到这个结果:
Executing task: lua54 c:\Users\Fabio\Documents\tabletop\randomSpawnWithChat.lua <
x 2
x 2
终端将被任务重用,按任意键关闭它。
所以,值是一样的。
如何编辑 table 中的值?
table = {{x=2}, {y=3}, {z=2}}
相当于
table = {
[1] = {x=2},
[2] = {y=3},
[3] = {z=2},
}
table[1]
只有一个字段 "x"
所以在 运行 你的循环之后
for k, v in pairs(table[1]) do
print(k,v)
table[k] = 5
end
可以替换为
table["x"] = 5
或 table.x = 5
你的 table 看起来像这样:
table = {
[1] = {x=2},
[2] = {y=3},
[3] = {z=2},
x = 5,
}
要更改单个值,您需要做的就是:
table[1].x = 5
我正在尝试更改 table 中的值,但我不能。
这是我的代码:
table = {{x=2}, {y=3}, {z=2}}
function printTabValue(tab, index)
for k, v in pairs(tab[index]) do
print(k, v)
end
end
for k, v in pairs(table[1]) do
print(k,v)
table[k] = 5
end
printTabValue(table,1)
我得到这个结果:
Executing task: lua54 c:\Users\Fabio\Documents\tabletop\randomSpawnWithChat.lua <
x 2
x 2
终端将被任务重用,按任意键关闭它。
所以,值是一样的。
如何编辑 table 中的值?
table = {{x=2}, {y=3}, {z=2}}
相当于
table = {
[1] = {x=2},
[2] = {y=3},
[3] = {z=2},
}
table[1]
只有一个字段 "x"
所以在 运行 你的循环之后
for k, v in pairs(table[1]) do
print(k,v)
table[k] = 5
end
可以替换为
table["x"] = 5
或 table.x = 5
你的 table 看起来像这样:
table = {
[1] = {x=2},
[2] = {y=3},
[3] = {z=2},
x = 5,
}
要更改单个值,您需要做的就是:
table[1].x = 5