Lua 变量,Table,For 循环语法
Lua Variable, Table, For Loop Syntax
刚刚在 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
从何而来?
这是为表设计的语法吗?
感谢任何解释。
pairs
returns 所有字段及其值的迭代器
更确切地说,它是 table 和之前看到的索引的函数,其中 returns 对索引及其值。
> t = {4,5,6}
> p = pairs(t)
> =p(t)
1 4
> =p(t,1)
2 5
> =p(t,2)
3 6
有 2 个选项:迭代每个键或仅迭代那些整数:
pairs
和 ipairs
函数
这个循环与python的
非常相似
l = [4,5,6]
for i, v in enumerate(l):
...
或
d = {"a":1, "b":2}
for k, v in d.iteritems():
...
如果你知道python(貌似大家都知道)
刚刚在 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
从何而来?
这是为表设计的语法吗?
感谢任何解释。
pairs
returns 所有字段及其值的迭代器
更确切地说,它是 table 和之前看到的索引的函数,其中 returns 对索引及其值。
> t = {4,5,6}
> p = pairs(t)
> =p(t)
1 4
> =p(t,1)
2 5
> =p(t,2)
3 6
有 2 个选项:迭代每个键或仅迭代那些整数:
pairs
和 ipairs
函数
这个循环与python的
非常相似l = [4,5,6]
for i, v in enumerate(l):
...
或
d = {"a":1, "b":2}
for k, v in d.iteritems():
...
如果你知道python(貌似大家都知道)