首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Lua中使字符串成为变量

如何在Lua中使字符串成为变量
EN

Stack Overflow用户
提问于 2018-07-24 05:23:23
回答 2查看 618关注 0票数 0

我正在用Lua编写脚本,脚本总是像这样在表中显示字符串

代码语言:javascript
复制
order = { apple="0@1@2"}
print(order["apple"])

因为它经常被显示,所以我想创建一个函数来覆盖所有这些内容

代码语言:javascript
复制
function getnumber(a,apple)
a=tonumber(order["apple"])
print(a)
end

但我发现"apple“不是可变的,所以我试着像ordertostring(apple)那样使用字符串,但仍然不起作用(尝试调用全局'string‘(一个表值)堆栈回溯),有人能教我如何解决这个问题吗?

EN

回答 2

Stack Overflow用户

发布于 2018-07-24 05:40:00

代码语言:javascript
复制
order = { apple="0@1@2"}

function getnumber(key)
    return (order[key])
end

print(getnumber("apple"))

这将返回:

0@1@2

或者将其赋值给一个变量以供以后使用:

value = getnumber("apple")

票数 1
EN

Stack Overflow用户

发布于 2018-07-24 06:41:32

假设您的函数参数是正确的,此代码将执行与您的第一个代码片段相同的操作:

代码语言:javascript
复制
function getnumber(a, apple)
  _G.a = {[apple] = "0@1@2"}
  print(a[apple])
end

getnumber('order', 'apple')

然而,这看起来很奇怪,我不禁想知道这是不是你真正想要的。也许你可以发布更多现有代码的示例,这样我们就可以看到它们的共同点,这些共同点应该被分解到函数中。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51487396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档