如果我有这样的项目的列表:
- local items = { "apple","orange","pear","banana" }
如何检查“橙色”是否在此列表中?
在Python我可以做:
- if "orange" in items:
- # do something
在Lua中有等效吗?
解决方法
你可以使用类似一组从
Programming in Lua:
- function Set (list)
- local set = {}
- for _,l in ipairs(list) do set[l] = true end
- return set
- end
然后你可以把你的列表在集合和测试成员资格:
- local items = Set { "apple","banana" }
- if items["orange"] then
- -- do something
- end
或者你可以直接遍历列表:
- local items = { "apple","banana" }
- for _,v in pairs(items) do
- if v == "orange" then
- -- do something
- break
- end
- end
另请参阅:集合。