如何在Lua中生成字符串变量
我正在用Lua写一张纸条,纸条上的字符串总是这样如何在Lua中生成字符串变量,lua,Lua,我正在用Lua写一张纸条,纸条上的字符串总是这样 order = { apple="0@1@2"} print(order["apple"]) 因为它经常显示,我想创建一个函数来涵盖所有内容 function getnumber(a,apple) a=tonumber(order["apple"]) print(a) end 但我发现“apple”不是变量,所以我尝试按顺序字符串[tostring(apple)],但仍然不起作用(尝试调用全局“string”(表值) 堆栈回溯)有人能教我如何
order = { apple="0@1@2"}
print(order["apple"])
因为它经常显示,我想创建一个函数来涵盖所有内容
function getnumber(a,apple)
a=tonumber(order["apple"])
print(a)
end
但我发现“apple”不是变量,所以我尝试按顺序字符串[tostring(apple)],但仍然不起作用(尝试调用全局“string”(表值)
堆栈回溯)有人能教我如何解决这个问题吗
order = { apple="0@1@2"}
function getnumber(key)
return (order[key])
end
print(getnumber("apple"))
这将返回:
0@1@2
或者将其分配给一个变量以供以后使用:
value=getnumber(“苹果”)
假设函数参数正确,此代码将执行与第一个代码段相同的操作:
function getnumber(a, apple)
_G.a = {[apple] = "0@1@2"}
print(a[apple])
end
getnumber('order', 'apple')
然而,这看起来很奇怪,我不禁想知道这是否是你真正想要的。也许您可以发布更多现有代码的示例,这样我们就可以看到它们的共同点,这些共同点应该被分解成函数。有时存在的
tonumber()
会有什么影响?这很有帮助,但是如果我真的想让字符串变为变量,我应该怎么做呢?@ChengEric它已经是一个字符串了。您可以通过在上述内容之后添加print(type(value))
来看到这一点。因此,getNumber()
可能应该重命名。