Discuss / Python / 完成作业,这里面很多坑 用int类型在函数内部不能使用,会报错

完成作业,这里面很多坑 用int类型在函数内部不能使用,会报错

Topic source

belin故事

#1 Created at ... [Delete] [Delete and Lock User]

方法1:使用list在函数内部引用其地址,并改变其值

def createCounter():
    a = [0]
    def counter():
        a[0] += 1
        return a[0]
    return counter

*方法2:利用迭代器,完成数值增1

def createCounter():
    def counter():
        n = 1
        while True:
            yield n
            n += 1
    c = counter()  
    def g():
        return next(c)
    return g

兄台高手,学习了,谢谢。

厉害,尤其那个迭代真是没想到,佩服。


  • 1

Reply