引用路径与全局变量
最近遇到一个全局变量无法使用的bug,在此记录一下该bug的表现与解决方案。
在一份代码中,文件以如下方式组织:
| – diff_main.py
| – diff
| – diff_code.py
| – diff_conf.py
在diff_main.py中调用diff_code.py中的全局变量g_tasknumber,并进行修改,但是在diff_code.py中再次调用该变量时,发现该变量值并未发生改变,还是初始值。经过调查,出现该现象的原因是diff_main.py中在import该代码时出现问题,导致全局变量未能更新。
diff_main.py中代码如下
import sys
import os
sys.path.append('./diff')
from diff.diff_code import g_tasknumber
将代码改为下述形式,全局变量便可以正常调用
import sys
import os
sys.path.append('./diff')
from diff_code import g_tasknumber