我无法想出这个。也许你可以试一试。
return function()
local handle = get.handle
local group1 = handle('group 1') --returns the namelabel of group 1
local group2 = handle('group 2')
for i=1,6
do
local groupx = group1 -- convert to groupx since i also have a group2 etc.
-- some process with group1 --
local groupx = string.sub(groupx, 6)
print(groupx) -- number 1
local groupx = groupx +1
print(groupx) -- number 2.0
local groupx = string.format("%.f",groupx)
fdb(groupx) -- number 2
groupx = string.format('group%s', groupx)
fdb(groupx) -- shows group2
-- some process with group2 --
end
end
它似乎不起作用。我不能通过在每个循环中添加1个整数从group1循环到group6。我找到了gsub,但这主要是用文本字符串完成的,而不是每次在循环中都改变的变量。
有人可以帮我正确编码。我的谢意将是巨大的。
亲切的问候,
马亭
答案 0 :(得分:1)
您似乎混淆了变量和字符串。通常,局部变量在运行时不具有字符串名称。
以下是一些更直接的方法......
local groups = {handle('group 1'),
handle('group 2'),
handle('group 3'),
handle('group 4'),
handle('group 5'),
handle('group 6')}
for i = 1, 6 do
local groupx = groups[i]
-- etc.
end
或
for i = 1, 6 do
local groupx = handle(string.format('group %d', i))
-- etc.
end
或
local groups = {}
for i = 1, 6 do
groups[i] = handle(string.format('group %d', i))
end
for i = 1, 6 do
local groupx = groups[i]
-- etc.
end