在 Lua 中处理可变数量的参数
Process variable number of arguments in Lua
我正在将参数传递给 Lua 脚本并使用以下方法检索它们:
local arg1, arg2 = ...
现在我想使用不同的语法,自由排序,这样我就可以调用:
./myscript.lua arg1=val1 arg2=val2
所以我正在尝试类似的东西:
args = ...
params = {}
for i, k in pairs(args) do
p, v = split(a, "=")
params[p] = v
end
这不起作用,因为 args
只获取第一个参数的值。
如何一次性检索传递给脚本的所有参数?
注意:脚本是使用 lua_pcall
从 C 执行的。
像这样用{...}
分配它:
args = {...}
params = {}
for i, k in ipairs(args) do
print(i, k)
end
其实不需要args
:
for i, k in ipairs{...} do
我正在将参数传递给 Lua 脚本并使用以下方法检索它们:
local arg1, arg2 = ...
现在我想使用不同的语法,自由排序,这样我就可以调用:
./myscript.lua arg1=val1 arg2=val2
所以我正在尝试类似的东西:
args = ...
params = {}
for i, k in pairs(args) do
p, v = split(a, "=")
params[p] = v
end
这不起作用,因为 args
只获取第一个参数的值。
如何一次性检索传递给脚本的所有参数?
注意:脚本是使用 lua_pcall
从 C 执行的。
像这样用{...}
分配它:
args = {...}
params = {}
for i, k in ipairs(args) do
print(i, k)
end
其实不需要args
:
for i, k in ipairs{...} do