当前位置 : 主页 > 网络编程 > lua >

Lua语言:如何使用类似于python列表推导的东西

来源:互联网 收集:自由互联 发布时间:2021-06-23
我是Lua的新手,我想知道是否有一些紧凑的方法来定义一个列表,就像我们在 Python中一样在Lua中使用metatable: lis = [i for i in set if i0] 任何一个例子将不胜感激. Lua没有原生名单 然而,正如
我是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

您也可以使用MetaLua或LuaMacros

网友评论