我知道在 Python 中很容易做到:someList[1:2]
但是在 Lua 中你是怎么做到的?该代码给了我一个语法错误。
问问题
8333 次
3 回答
17
{unpack(someList, from_index, to_index)}
但是表索引将从 开始1
,而不是从from_index
于 2013-03-05T13:53:15.727 回答
5
完全等同于Python
someList = [ 'a', 'b', 'c', 'd' ]
subList = someList[1:2]
print( subList )
在 Lua中是
someList = { 'a', 'b', 'c' , 'd' }
subList = { unpack( someList, 2, 2 ) }
print( unpack(subList) )
关键是unpack
返回不是表格的“多个结果”,因此要在 Lua 中获取列表(也称为表格),您需要使用and将结果“制表” 。{
}
但是,您不能在 Lua 中打印表格,但可以打印多个结果,因此要获得有意义的输出,您需要再次解包。
因此,与 Python 使用列表来模拟多个返回不同,Lua确实拥有它们。
Nb在 Lua 的更高版本中unpack
变为table.unpack
于 2018-06-11T15:24:00.897 回答