python 迭代器、生成器待续。。
来源:互联网 发布:java easyui tree例子 编辑:程序博客网 时间:2024/05/22 09:06
一、迭代器
- 概念:
- 根据记录前面元素的位置信息,去访问元素的过程—遍历
- 特点只能从前向后访问
2. 可迭代对象
- 判断可迭代对象的方法
- iterable(�迭代对象)
- for item in obj:(obj为可迭代对象)
- print(item)
- 函数isinstance(对象,类型)判读对象是否为类型的实例。
- ex:from collections import Iterable
- isinstance(obj,Iterable)返回bool值
- 可迭代对象需要具备类魔法方法:
- __iter__方法可以返回自己,可迭代对象的本质是通过iter方法提供一个可遍历的对象
- return self
- 迭代器具备next()方法:
- Def__next__(self):
- 如果需要实现一个迭代器,就需要使用__next__(self):方法
- 获取可迭代对象的迭代器
- Iter(可迭代对象)(返回迭代器)
- Next(迭代器)函数调取,调取最后一个后抛出StopIteration
- 判断一个对象是迭代器
- isinstance(对象名,Iterator)
二、生成器(generator)
具备二种形式
1.生成器表达式格式(x for x in range(100))
2.生成器是特殊的迭代器。使用方式和迭代器完全一样,内部 已经实现了next()iter()。
3. 生成器函数
- yield 魔法 可以暂停while循环
- 含有yield关键字的函数已经不是普通函数了,而是生成器函数。
- 在执行函数是能够挂起当前函数,并将yield后面的数据当作返回值返回给调用代码
- 当在此调用该生成器的函数的时候,会继续恢复当前函数,并且紧接着上次运行的代码继续运行
- send函数 相当于next(),区别在于可以给生成器发送数据 用法不同函数值.send()参数为发送数据。
阅读全文
0 0
- python 迭代器、生成器待续。。
- python 迭代器 生成器 生成器表达式
- python迭代器和生成器
- Python 迭代器和生成器
- Python 迭代器 生成器
- Python 迭代器和生成器
- Python迭代器和生成器
- python~迭代器~生成器~
- Python之生成器、迭代器
- python 迭代器与生成器
- Python迭代器和生成器
- python迭代器与生成器
- python 迭代器与生成器
- python迭代器以及生成器
- Python:迭代器与生成器
- Python 迭代器 生成器
- python迭代器与生成器
- Python-迭代器、生成器、yield
- jave学习笔记
- 获取当前相对绝对路径
- 讲下SpringMvc的核心入口类是什么,Struts1,Struts2的分别是什么
- Gas Station
- 前端学习笔记
- python 迭代器、生成器待续。。
- composer 自动载入的简单理解
- SpingMvc中的控制器的注解一般用那个,有没有别的注解可以替代
- 封装的OkHttpUtils,拦截器,gsonutils类,解绑(防止内内存泄漏)
- Spark核心数据模型RDD及操作
- Servlet总结-Request
- 计算天数(c语言)
- es索引管理
- Python多进程