Joh*_*ohn 6 python lua introspection
对于任何不熟悉 Python 中这两种方法的人......
dir返回特定对象的方法/属性列表。
help返回一个对象doc strings。
小智 5
让我们玩得开心:
function dir(obj)
for k, v in pairs(obj) do print(k) end
end
Run Code Online (Sandbox Code Playgroud)
这是 Lua 中类似的 python“dir”函数。
Lua 没有“文档字符串”的概念。
所有 Lua 对象都是表(或用户数据,但您无法从 Lua 代码中检查用户数据。Lua 5.1 中不行;在 5.2 中,如果创建用户数据的用户希望您这样做,您可以这样做)。因此,您可以只使用现有的表方法来迭代表的内容:
for k, v in pairs(obj) do
--Do stuff with k(ey) and v(alue)
end
Run Code Online (Sandbox Code Playgroud)
请注意,这将调用元方法,因此表的真实内容未知。话又说回来,如果创建该对象的人希望您拥有真实的内容,他就不会使用元方法来保护它们。