Попытка проиндексировать вложенную таблицу и вставить числовой номер - PullRequest
0 голосов
/ 19 мая 2018
local file = assert(io.open("E:\\text.txt","r"))
local Table = {}
local function Sort()
for c in file:lines() do
    Table[#Table + 1] = {}
    print(c)
    for i = 1,#c do
        Table[#Table][i] = string.byte(c,i,i) 
        Table[#Table] = table.concat(Table[#Table])
    end
        print("hi")
        print(table.concat(table))
    end
end
Sort()

- ошибка: 8: попытка индексировать строковое значение (поле '?')

Этот код Lua должен проходить по строкам файла исоздать таблицу с числовым представлением всех ее символов.

1 Ответ

0 голосов
/ 31 мая 2018

В вашем внешнем цикле в первый раз вы устанавливаете Table[1] = {}.В первый раз во внутреннем цикле вы устанавливаете Table[1] на результат table.concat, который является строкой.В следующий раз во внутреннем цикле, когда i=2 вы пытаетесь Table[1][2], но Table[1] теперь является строкой, отсюда и ошибка.

...