帮忙用lua写一个函数可以实现多次传入键值对来建立对应关系表
时间: 2024-11-09 08:20:32 浏览: 20
netbios_module.zip_handsomezqo_lua实现的netbios协议多网卡检测
在Lua中,你可以创建一个名为`create_dict`的函数,这个函数接受任意数量的关键值对作为参数,并将它们存储在一个关联数组(哈希表)中。以下是实现该功能的一个简单示例:
```lua
function create_dict(...)
local dict = {}
for _, pair in ipairs {...} do
if type(pair) == 'table' and #pair == 2 then -- 检查是否是键值对
local key, value = unpack(pair)
dict[key] = value
else
print("Invalid input. Please provide a key-value pair.")
break
end
end
return dict
end
-- 使用示例
local my_dict = create_dict("name", "John", "age", 30, "city", "New York")
print(my_dict) -- 输出: {name="John", age=30, city="New York"}
```
在这个例子中,`...`是占位符,表示接收任意数量的参数。函数通过`ipairs`迭代这些参数,然后检查每个元素是否是一个包含两个元素的表。如果是,就将键和值添加到`dict`中。
阅读全文