我想用代码构造一个配置文件: 但是,我的代码错了,为什么?最后一行只打印nil,nil,nil ......
-- Define ten network interfaces
interfaces = {} -- Define an empty table
for n = 1, 10 do
interfaces[n] = {
device = "eth"..n,
address = "192.168.1."..n
}
end
for k, v in pairs(interfaces) do print(device,address) end
答案 0 :(得分:2)
在下面的代码中,名称device
和address
被解析为未定义的全局变量。因此输出中的nils。
for k, v in pairs(interfaces) do print(device,address) end
请改为尝试:
for k, v in pairs(interfaces) do print(v.device,v.address) end
由于未定义pairs
遍历的对的顺序,如果您需要按顺序输出列表,请使用ipairs
。