我在从一个表中移除了一个值之后,如何压缩该表?
2019-2-24 16:22:48
收藏:0
阅读:125
评论:1
我有一个包含4个值的表格。
例如:
2
4
1
3
我使用一个函数通过pairs来遍历表格,查找表格中的数字1,并获取它在表格中的位置。
然后我使用table.remove来从该位置删除1。现在我想压缩表格,使其只有3个值。
2 4 3
我对LUA还比较新,所以请温柔对待我。 :)
我大致上有这个:
CloseRandomConsole = math.random(1,(#ConsoleTable))
If CloseRandomConsole == 1 then
for key, value in pairs(ConsoleTable) do
if value == "1" then
table.remove(ConsoleTable, key)
break
end
end
我知道我错在哪里,但我不知道如何解决它。
math.random(1,(#ConsoleTable))
我只想在表格中的值之间随机选择一个值。而且当我随机该值时,我希望它被删除,这样我就只剩下三个值可以随机选择。
我是否让您感到困惑? :)
原文链接 https://stackoverflow.com/questions/4354278
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
- 如何编写 Lua 模式将字符串(嵌套数组)转换为真正的数组?
你是什么意思?
s = {2,4,1,3} -- 表格 for k,v in pairs(s) do if v==1 then table.remove(s,k) end end print(#s) -- 现在是 3 for k,v in pairs(s) do print(v) end -- 只有 3 个值 ...
@Vitae:当你问任何事情时,你应该描述你想做什么,而不是如何做--尤其是当你不知道你在做什么时...
也许你想从表中删除一个随机值?然后取一个随机索引上的值...
function poprandom( t ) local idx = math.random(1,#t) local ret = t[idx] table.remove(t, idx) return ret end