Lua中有没有像xrange(Python)这样的函数,所以我可以做这样的事情:
for i in xrange(10) do
print(i)
end
这与其他问题不同,因为他正在寻找条件测试器,但我不是在寻找条件测试器。
如果你想迭代数字:
for i = 0,9 do
print(i)
end
在另一种方式中,您可以制作自己的迭代器:
function range(from, to, step)
step = step or 1
return function(_, last)
local next = last + step
if step > 0 and next < to or step < 0 and next > to or step == 0 then
return next
end
end, nil, from - step
end
并使用它:for i in range(0, 10) do print(i) end
function xrange(a,b,step)
step = step or 1
if b == nil then a, b = 1, a end
if step == 0 then error('ValueError: xrange() arg 3 must not be zero') end
if a + step < a then return function() end end
a = a - step
return function()
a = a + step
if a <= b then return a end
end
end