Lua: Могу ли я выбрать таблицу в сценарии с помощью аргумента в командной строке? - PullRequest
1 голос
/ 23 мая 2019

У меня есть скрипт lua со многими таблицами, такими как

local a = {1,2,3}
local b = {1,2,3}
local c = {1,2,3}

и т. Д.и одна функция, такая как

test = {}
function test.set(args)
    for x, y in pairs(args) do
    ....
    end
end

test[arg[1]](arg[2])

Теперь я хочу выбрать одну из таблиц через командную строку, чтобы использовать ее в функции.Я попытался

lua MyScript.lua set a

и получил ошибку

lua: MyScript.lua:1249: bad argument #1 to 'pairs' (table expected, got string)
stack traceback:
    [C]: in function 'pairs'
    MyScript.lua:1249: in field '?'
    MyScript.lua:1266: in main chunk
    [C]: in ?

Это имеет смысл, потому что я передаю строку.Но я не знаю, как выбрать таблицу, которую я хочу использовать в функции.Кто-нибудь может мне помочь?

1 Ответ

4 голосов
/ 23 мая 2019
local all_your_tables = {a = {1,2,3}, b = {1,2,3}, c = {1,2,3}}
...
test[arg[1]](all_your_tables[arg[2]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...