帮忙用lua写一个函数可以实现连续传入两个值建立对应关系表
时间: 2024-11-10 14:25:14 浏览: 21
Lua返回一个Closures函数实例
在Lua中,你可以创建一个函数来接收两个参数并将其添加到一个关联数组(字典)中。下面是一个简单的示例:
```lua
function associate(key, value)
local relations = {} -- 创建空的关联数组
if not relations[key] then -- 如果键不存在,就添加新的键值对
relations[key] = value
else
-- 如果键已存在,将新值追加到列表中(假设value是表类型)
relations[key] = {relations[key], value}
end
return relations
end
-- 使用示例
local myTable = associate("name", "Alice")
local myTable2 = associate("name", "Bob") -- 如果之前已经有"Alice",会追加"Bob"
local myTable3 = associate("age", 25)
print(myTable) -- 输出 {"name": { "Alice", "Bob" }, "age": 25}
```
这个函数`associate`接收两个参数,如果键不存在则直接添加,如果键已存在则将新值添加到对应的值(这里假设是列表)。注意,这个例子假设你想要把值存储为一个列表,因为Lua本身并没有内置的方式来处理复杂的数据结构,如Python的set或list-of-dict。
阅读全文