python学习day5(内部嵌套函数的, 把内部方法当做一个变量, 不执行)

不执行代码写出下面结果:

li=[]
for x in range(4):
    print(x)
    def fuc():
        print(x)
        return x
    li.append(fuc)
print(li[1]())

思路:

1、第一次循环,print 0 、将方法append到列表 li 里(方法未执行)

2、循环四次,print 0 1 2 3   方法append列表中四次(此时列表中有四个方法体)

3、最后X的值为3

4、li[1]()  执行列表中第二个方法体

结果:

猜你喜欢

转载自www.cnblogs.com/grace-l/p/12965934.html