微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

我是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

您也可以使用MetaLuaLuaMacros

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐