笔记---迭代器,闭包,装饰器

Posted 成长日记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了笔记---迭代器,闭包,装饰器相关的知识,希望对你有一定的参考价值。

1.迭代器
a.判断迭代 isinstance()判断一个
b.生成器是可迭代对象
c。iter() 转成生成器

迭代对象


2. 闭包
定义 :一坨东西 ,名字只是一个变量指向这一坨东西
在函数里面定义一个函数,里面的函数用到外边的变量,这个函数和用到的变量称之为变量
第一步:先调用函数,找一个变量指向里面的函数,
例子: def test(number):
print(‘1111111111‘)
def test_in(number2):
print(‘---2----‘)
print(number+number2)
print(‘333333‘)
return test_in
ret =test(100)
print(‘*‘*30)
ret(1)#这个ret就是test_in()这个函数
ret(200)

应用:
def test(a,b):
def test_in(x):
print(a*x+b)
return test_in
line1=test(1,1)
line2=test(10,4)
line1(0)
line2(0)
简化代码传参的格式

3.装饰器
原理:
例子
def w1 (func):
def inner():
print(‘1111‘)
fnuc()
return inner
def f1():
print(‘f1‘)
def f2():
print(‘f2‘)
f1=w1(f1)# 等价 @w1
f1()
f2=w1(f2)
f2()

2个装饰器 先装饰离函数最近的,然后向上一次装饰

 



4.匿名函数
应用 给字典排序
例子 infors=[{"name":"laowang","age":10},"name":"xiaoming","age":10},"name":"bangzhang","age":10}]
infors.sort(key=lambda x:x[‘name‘]) 第一个x 为字典,第二个x为key


5.列表排序
num。sort()
num.reverse() 逆序


6.

以上是关于笔记---迭代器,闭包,装饰器的主要内容,如果未能解决你的问题,请参考以下文章

9.23闭包函数/装饰器/迭代器/生成器

python装饰器迭代器生成器闭包等等

函数闭包,装饰器,迭代器

Python概念之装饰器迭代器生成器

19闭包生成器迭代器装饰器

函数进阶——闭包,装饰器,生成器,迭代器