一种使用动态变量名的方法?

时间:2015-07-24 21:14:08

标签: lua

在Lua中,有没有办法使用动态变量名称,例如变量中包含变量的名称?

假设我想要一个名为“myvar2”的变量,但不想像以下那样对其进行硬编码:

myvar2 = 55

但是另一个变量如“varname”包含名称“myvar2”?

示例:

varname = "myvar2"

*varname = 25

print(myvar2)  --->  25

1 个答案:

答案 0 :(得分:5)

一种方法是在全局环境中按名称查找变量,表_G

 varname = "myvar2"
 _G[varname] = 25
 print(myvar2) ---> 25

请注意,这不会找到局部变量。 有用的阅读: PIL 14.1 – Accessing Global Variables with Dynamic Names