我是Lua的新手,我想知道是否有一些紧凑的方法来定义一个列表,就像我们在
Python中一样在Lua中使用Metatable:
lis = [i for i in set if i>0]
任何一个例子将不胜感激.
解决方法
Lua没有原生名单
然而,正如@joachim指出的那样,你可以用它来实现它.
local comp = require 'comprehension' . new() comp 'table(v,k for k,v in pairs(_1))' {[3]=5,[5]=7}
它会产生:
{[5]=3,[7]=5}
请注意,理解在普通的5.2.x Lua中不起作用.它需要Penlight Lua Libraries:http://stevedonovan.github.com/Penlight/api/index.html