【问题标题】:Getting command line parameters in Lua interpreter在 Lua 解释器中获取命令行参数
【发布时间】:2012-06-20 15:52:27
【问题描述】:

如何在 Lua 中调用函数? 我是 Lua 的新手,找不到非常简单的方法。我编写了一个 test.lua 并使其可执行。我在里面放了这个:

function Double(n)
 return 2*n
end

print(Double(15))

如果我调用test.lua,它返回30,ok。

现在我删除了print 行,并希望能够使用以下内容调用该函数:

test.lua 15

它不起作用。如何在不硬编码第一个参数的情况下从命令行或 Lua shell 调用函数?

【问题讨论】:

  • 这与调用函数无关。您正在谈论如何从命令行获取参数。你不能从 Lua 的命令行调用函数;您可以获取参数,然后决定如何处理它们。

标签: lua


【解决方案1】:

您可以将参数传递给将出现在 arg 全局变量中的脚本。

例如

function Double(n)
 return 2*n
end

print(Double(arg[1]))

http://www.lua.org/pil/1.4.html

【讨论】:

    【解决方案2】:

    您也可以使用... 获取命令行参数:

    local input = ...
    if input then
      local Double
      Double = function(input)
        return 2 * input
      end
      return print(Double(input))
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 1970-01-01
      • 1970-01-01
      • 2011-11-15
      • 1970-01-01
      • 2015-03-28
      相关资源
      最近更新 更多