在Lua中,有没有办法使用动态变量名称,例如变量中包含变量的名称?
假设我想要一个变量命名为"myvar2",但不想硬编码,如:
myvar2 = 55
Run Code Online (Sandbox Code Playgroud)
但是有另一个变量,如"varname"包含名称"myvar2"?
例:
varname = "myvar2"
*varname = 25
print(myvar2) ---> 25
Run Code Online (Sandbox Code Playgroud)
一种方法是在全局环境中按名称查找变量,表格_G如下:
varname = "myvar2"
_G[varname] = 25
print(myvar2) ---> 25
Run Code Online (Sandbox Code Playgroud)
请注意,这不会找到局部变量.有用的阅读: PIL 14.1 - 使用动态名称访问全局变量