python基础6之迭代器&生成器、json&pickle数据序列化
2017-02-15 18:41
821 查看
内容概要:
一、生成器
二、迭代器
三、json&pickle数据序列化
一、生成器generator |
在学习生成器之前我们先了解下列表生成式,现在生产一个这样的列表[0,2,4,6,8,10],当然有很多方法,下面的方法就叫列表生成式。
>>> [ i*2 for i in range(6) ] [0, 2, 4, 6, 8, 10]
当然还有其他方法:
def gen(): a=1 while a<10: yield a a+=1 for i in gen(): print(i) 结果: 1 2 3 4 5 6 7 8 9View Code
二、迭代器 |
概念:
可迭代对象(Iterable)):可以被for循环的对象或者数据类型叫做可迭代对象,所以像
list、
tuple、
dict、
set、
str、generator都是可迭代对象,这些可迭代对象可以通过iter()方法成为迭代器;
迭代器:可以被
next()函数调用并不断返回下一个值的对象称为迭代器,生成器是迭代器,但迭代器不一定是生成器;
可以使用
isinstance()判断一个对象是否是
Iterator对象
>>> from collections import Iterator,Iterable >>> isinstance([],Iterator)#不是迭代器返回false False >>> isinstance([],Iterable)#可迭代对象返回True True >>> isinstance((i*2 for i in range(6)),Iterator)#是迭代器 True >>> isinstance((i*2 for i in range(6)),Iterable) True
相关文章推荐
- Python-Day4 Python基础进阶之生成器/迭代器/装饰器/Json & pickle 数据序列化
- 装饰器、生成器,迭代器、Json & pickle 数据序列化
- python之路-14.Json & pickle 数据序列化
- Python序列化基础知识(json/pickle)
- python3之序列化(pickle&json&shelve)
- python3----模块(序列化(json&pickle)+XML+requests)
- 详解Python之数据序列化(json、pickle、shelve)
- Python之数据序列化(json、pickle、shelve)
- Json & pickle 数据序列化
- Python基础(12)_python模块之sys模块、logging模块、序列化json模块、pickle模块、shelve模块
- python学习之路(json & pickle 模块 ---序列化,反序列化)
- python 序列化数据:pickle与json ,dumps与loads
- Python基础-迭代器&生成器&装饰器
- Python基础知识之json&pickle
- Python之数据序列化(json、pickle、shelve)
- Python之数据序列化(json、pickle、shelve)
- python中内置函数和json、pickle数据序列化
- Python-json与pickle数据序列化
- Python3. 4000 5——Json与pickle数据序列化
- Python基础-序列化(json/pickle)