在python的类和函数中使用静态变量,python静态,方法一 →→ 通过类的_


方法一 →→ 通过类的__init__和__call__方法

class foo:    def __init__(self, n=0):        self.n = n    def __call__(self, i):        self.n += i        return self.na=foo()print a(1)print a(2)print a(3)print a(4)

方法二 →→ 在函数中定义一个类

def foo2 (n=0):    class acc:        def __init__ (self, s):            self.s = s        def inc (self, i):            self.s += i            return self.s    return acc (n).inca=foo2()print a(1)print a(2)print a(3)print a(4)
                                方法三 →→ 使用堆上的匿名参数
def foo3 (i, L=[]):    if len(L)==0:        L.append(0)    L[0]+=i    return L[0]print foo3(1)print foo3(2)print foo3(3)print foo3(4)

在python官方的2.6环境下运行,

上述三段代码得到的结果都是

1

3

6

10

评论关闭