我是Lua脚本的新手,在Lua中创建Set时遇到了一些问题。我试图使用下面的代码在Lua Set中存储独特的元素,但它并没有像预期的那样工作。
local function test()
local t1 = {11,11,22,33,33,44,55,66,77,88,99}
local t = {}
for i, v in ipairs(t1)
do
t[v] = v
end
return t
end
字符串
这个函数应该从t1
返回唯一的元素,但它返回空数组。我想我做错了什么,但不知道是什么。有人能帮忙吗?
读了很多关于Lua Sets的文章,仍然无法解决问题。尝试在docker中本地运行脚本,使用不同的修改/方法,但没有任何帮助
1条答案
按热度按时间iklwldmw1#
Redis将Lua表转换为数组回复,你必须确保你的Lua表是一个数组,即index(表键)从1开始。
然而,在你的例子中,
t[1]
是nil,Redis将其作为一个空数组。为了解决这个问题,你需要将
t
转换为数组:字符串