我正在为仿真软件编写用户程序。有一个名为adj_elect05的变量。以下大块代码被一遍又一遍地调用。每次调用它时,我都希望adj_elect05(具有数值)增加一定量,然后将该数量写入文件。这是有效的代码:
increment = -10
adj_elect05 = adj_elect05 + increment
oct_voltages = io.open(O_V, "a+")
oct_voltages:write("\n", adj_elect05)
oct_voltages:close ()
在文件中我得到一个数字列表:-10,-20,-30等。问题是我需要给adj_elect05一个通用名称,以便以后可以更改它,而不必更改它显示的每个实例,所以我写道:
increment = -10
octupole_v = adj_elect05
octupole_v = octupole_v + increment
oct_voltages = io.open(O_V, "a+")
oct_voltages:write("\n", octupole_v)
oct_voltages:close ()
有了这个,我得到-10写入文件的代码运行的时间,而不是每次减少10。我究竟做错了什么?
答案 0 :(得分:0)
您需要的是使用局部变量:
local increment = -10
local octupole_v = adj_elect05
octupole_v = octupole_v + increment
默认情况下,变量被视为全局变量(与Python不同)。