博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
笔记---迭代器,闭包,装饰器
阅读量:7041 次
发布时间:2019-06-28

本文共 920 字,大约阅读时间需要 3 分钟。

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.

转载于:https://www.cnblogs.com/mrwuzs/p/8028298.html

你可能感兴趣的文章
Zend Studio使用教程:使用Zend Studio和Zend Server进行根本原因分析 (二)
查看>>
golang的fmt包String(),Error(),Format(),GoString()的接口实现
查看>>
Java技术转(兼顾)产品经理——读《快速转行做产品经理》有感
查看>>
成为优秀Java开发人员的10件事
查看>>
Kali Linux安装教程
查看>>
mysql客户端pymysql在python下性能比较
查看>>
Android缓存处理
查看>>
JavaScript 数据类型检测终极解决方案
查看>>
年赚百万游戏主播!玩转Python后:几行代码轻松“吃鸡” 附源码
查看>>
【python】使用简单的python语句编写爬虫 定时拿取信息并存入txt
查看>>
卡拉OK歌词原理和实现高仿Android网易云音乐
查看>>
那些被忽略的盒子模型小知识
查看>>
第三章 Redis 客户端的使用 Java版【Redis入门教程】
查看>>
ThreadPoolExecutor 核心源码解析
查看>>
CSS3 弹性布局快速入门
查看>>
上架被拒修改记录
查看>>
小编带着小白看springboot源码6
查看>>
javascript原型链
查看>>
Re: 从零开始的【comic spider】《最简单的实现》(上)
查看>>
Java 单例模式学习理解
查看>>