Lua变量,表,F​​or循环语法

时间:2015-03-10 19:51:23

标签: for-loop lua lua-table

刚刚在Lua中看到了这个例子......

  -- Example 24   -- Printing tables.
  -- Simple way to print tables.

  a={1,2,3,4,"five","elephant", "mouse"}

  for i,v in pairs(a) do print(i,v) end


  -------- Output ------

  1       1
  2       2
  3       3
  4       4
  5       five
  6       elephant
  7       mouse

  Press 'Enter' key for next example

我之前没有见过这种语法for i,v in pairs(a) do print(i,v) end

v在哪里成立?

单词in会导致它存在吗?

出于同样的原因,i在哪里出现?

这是为表格设计的语法吗?

感谢您的任何解释。

1 个答案:

答案 0 :(得分:3)

pairs返回所有字段及其值的迭代器

更确切地说,它是表和先前看到的索引的函数,它返回索引对及其值。

> t = {4,5,6}
> p = pairs(t)
> =p(t)
1   4
> =p(t,1)
2   5
> =p(t,2)
3   6

有两个选项:遍历每个键或只是整数键: pairsipairs函数

这个循环与python的

非常相似
l = [4,5,6]
for i, v in enumerate(l):
    ...

d = {"a":1, "b":2}
for k, v in d.iteritems():
    ...

如果你知道python(看起来每个人都知道它)