Lua文本和功能打印在同一行

时间:2016-04-25 12:44:55

标签: lua

任何人都可以帮助我吗?

function sum(_g, _h)
    local num = (_g * _h) / 2
    return num
end

print("The result is")(sum(10, 6))

为什么这不起作用?

1 个答案:

答案 0 :(得分:8)

函数print将一个或多个字符串作为参数。 当字符串作为不同的参数输入时,它将以标签

分隔输出它们
The result is    20

要获得此输出,只需想象您将sum的回报存储在变量

res = sum(10, 6)

然后拨打print输入您的字符串,结果就像您在函数10中输入6sum一样:

print("The result is ", res)

这也引出了

print("The result is ", sum(10, 6))

无需将结果存储在任何地方。

无论如何,如果你的目标是

The result is 20

您必须只输入一个字符串作为print

的参数
..

是允许您在一个字符串中连接两个字符串的运算符,因此"hello".." world"会生成"hello world"

现在只需使用"The result is "运算符将两个字符串20..(实际上是一个数字,但它会自动转换为字符串)组合在一起,如

res = sum(10, 6)
mystring = "The result is "
print(mystring..res)

或者,不久之后

print("The result is "..sum(10, 6))