列表循环放引用并写出打印结果

flist = [] # 创建了一个空列表

for i in range(3):  # 循环三次
    def foo(x):     # 定义三次函数
        print (x + i)
    flist.append(foo)   # 把三次函数的引用放到列表中

for a in flist:    # 按个遍历列表里的三个函数的引用
    a(2)        # 每个引用都调用,并传入参数2, 执行2+i,i 是 2

# 最后输出三个4

 

原文地址:https://www.cnblogs.com/wf-skylark/p/9104730.html