Lua 相当于 dictionary.get() 方法?
Lua equivalent of dictionary.get() method?
如何使用参数访问字典?
在python我能做到dictionary.get(param)
在 lua 中是否有与此等效的内容?
我想做这样的事情:
function make_object_from_flag(x, y, flag)
local flag_obj = {
[1] = make_impassable_object(x, y),
[2] = make_coin(x,y),
[4] = make_screen_transition_object(x, y),
}
flag_obj.get(flag)
end
Lua 只有一个数据结构,本质上是一个名为“table”的映射(或字典)。
Table Lua 中的索引通常使用方括号 []
,就像 python 对数组的作用一样。
基本上,正如 Egor Skriptunoff 在他的评论中指出的那样,您希望 flag_obj[flag]
访问与 table flag_obj
中的键 flag
关联的值。
请注意,尽管像在 C 中那样使用位标志非常不常见,而且在 Lua 中的性能也不是很好,除非有充分的理由,否则通常不应这样做。
如何使用参数访问字典?
在python我能做到dictionary.get(param)
在 lua 中是否有与此等效的内容?
我想做这样的事情:
function make_object_from_flag(x, y, flag)
local flag_obj = {
[1] = make_impassable_object(x, y),
[2] = make_coin(x,y),
[4] = make_screen_transition_object(x, y),
}
flag_obj.get(flag)
end
Lua 只有一个数据结构,本质上是一个名为“table”的映射(或字典)。
Table Lua 中的索引通常使用方括号 []
,就像 python 对数组的作用一样。
基本上,正如 Egor Skriptunoff 在他的评论中指出的那样,您希望 flag_obj[flag]
访问与 table flag_obj
中的键 flag
关联的值。
请注意,尽管像在 C 中那样使用位标志非常不常见,而且在 Lua 中的性能也不是很好,除非有充分的理由,否则通常不应这样做。