函数的闭包

.函数名的应用
def func():
print(666)

1.1 函数名就是函数的内存地址。
print(func)
1.2 函数名可以做变量。

def func():
print(666)
f1=func1
f2=f1
f2()

1.3 函数名可以作为函数的参数。

1.4 函数名还可以当函数的返回值。

def wraaper():
def inner():
print('inner ')
return inner

1.5 函数名可以作为容器类类型的元素。


globals和 locals
globals()返回全局变量的一个字典。

locals()返回当前位置的局部变量的字典。


2.闭包
内层函数对外层函数的变量(飞全局变量)的引用,并返回





3.可迭代对象
对象内部含有__iter__方法就是可迭代对象,
可迭代对象满足可迭代协议。

判断对象是否是可迭代对象
print('__iter__'in dir(s1))
print(dir(对象))

4.迭代器
对象内部含有__iter__方法且含有__next__方法就是迭代器


5.while 循环模拟for循环
原文地址:https://www.cnblogs.com/13507215809qwer-/p/9512614.html