Lua:
> = string.sub("Hello Lua user", 7) -- from character 7 until the end
Lua user
> = string.sub("Hello Lua user", 7, 9) -- from character 7 until and including 9
Lua
> = string.sub("Hello Lua user", -8) -- 8 from the end until the end
Lua user
> = string.sub("Hello Lua user", -8, 9) -- 8 from the end until 9 from the start
Lua
> = string.sub("Hello Lua user", -8, -6) -- 8 from the end until 6 from the end
Lua
Python:
>>> "Hello Lua user"[6:]
'Lua user'
>>> "Hello Lua user"[6:9]
'Lua'
>>> "Hello Lua user"[-8:]
'Lua user'
>>> "Hello Lua user"[-8:9]
'Lua'
>>> "Hello Lua user"[-8:-5]
'Lua'
Python, в отличие от Lua, является нулевым индексом, следовательно, подсчет символовэто отличается.Массивы начинаются с 1 в Lua , 0 в Python.
При нарезке в Python первое значение является включающим, а второе - эксклюзивным (до, но не включая).Пустое первое значение равно нулю, пустое второе значение равно размеру строки.