我必须在我的 Torch / Lua 脚本中分析一些对象及其结构。我想使用一个行为类似于str()
R的命令。
你有什么建议吗?
您可能希望使用序列化程序以可读的方式表示复杂的数据结构。有torch.serialize函数,但它不会产生人类可读的输出。我编写了支持某些选项的Serpent 序列化程序和漂亮打印机str()
,例如表的最大嵌套级别或表中的最大元素数。它还支持自定义格式化程序,允许您在某种程度上修改输出。
我喜欢这个模块:https ://github.com/kikito/inspect.lua
luarocks install inspect
然后像这样导入它
local inspect = require 'inspect'
输出可能是这样的:
assert(inspect(setmetatable({a=1}, {b=2}) == [[{
a = 1
<metatable> = {
b = 2
}
}]]))
常见用法:
print(inspect(myobj))