lua - 从值中获取表键名

标签 lua key lua-table

我正在尝试从值中获取表键名称。 tostring 仅返回table: XXXXXXXXX

我尝试了一些功能,但没有任何效果。

config = {
    opt1 = "etc..."
}
players = {}

function openMenu(playerName, configTable)
    players[playerName] = Something to get Table Key...

    -- read the table and create a gui not yet made
end

接下来,如果我这样做:

print(players[playerName])

我想得到这个输出:

"config"

最佳答案

您需要迭代表的所有,如果值相等则返回键。请注意,这只会返回一个绑定(bind),即使多个键可能导致相同的值:

function find(tbl, val)
    for k, v in pairs(tbl) do
        if v == val then return k end
    end
    return nil
end

关于lua - 从值中获取表键名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31383270/

相关文章:

python 字典排序奇怪(想要非字母顺序)

lua - 为什么 Lua 中的大型队列使用 w/table 删除/插入效率低下?

regex - 如何减少这个正则表达式以适应 Lua?

file-io - 文件读取未完成

colors - Lua:褪色函数

python - 如何使用 scrapy_splash 包在表单发布后重定向?

c++ - 在 C++ 中映射多个键

sql - Linq 自连接组合键

lua - 为什么表文字与Lua中的表引用区别对待?

将一个变化的表插入到另一个表中。表值本应不同却相同