星期二, 十一月 28, 2006

python module global var

$ cat main.py
#!/usr/bin/python
import module
module.func()
module.func()

$ cat module.py
#!/usr/bin/python
VAR = 0
def func():
global VAR
VAR += 1
print 'module global VAR: %s' % VAR

$ python main.py
module global VAR: 1
module global VAR: 2

所以必须注意,如果改变了全局变量的值,程序可能会出问题,如果在一个模块内调用问题不大,但特别是作为其它模块调用时,很容易忽视这一点。

没有评论: