我这里有这个代码。我可以添加代码的唯一部分是在'i = 1'行之后的main_中。这个脚本将执行多次并且会有一些变量(可能不是'i',可能是'xy','var',任何东西),每次递增1。我已经通过声明'i'作为方法之外的全局来实现这一点,但不幸的是,我无法保持这种方式。
有没有办法让'i'在上述参数中作为全局变量?
def main______():
try:
i+=1
except NameError:
i=1
main______()
答案 0 :(得分:1)
如果要使用全局变量,则必须将其声明为全局变量。这有什么问题?
如果您需要在调用之间存储状态,则应使用类
>>> class F():
... def __init__(self):
... self.i=0
... def __call__(self):
... print self.i
... self.i+=1
...
>>> f=F()
>>> f()
0
>>> f()
1
>>> f()
2