设为首页 加入收藏

TOP

python 生成器&迭代器(二)
2019-02-21 18:08:20 】 浏览:117
Tags:python 成器
p;  包子[4]来了,被[B]吃了!

二、迭代器

1、什么是迭代器?

    迭代是指可以用for循环来遍历

     for循环内部三件事: 1.调用可跌代对象的iter方法返回一个可迭代对象
                                2.不断调用可迭代对象的next方法
                                3.处理StopIteration

  注:生成器都是迭代器,迭代器不一定是生成器

2、满足两个条件: (1) 有iter方法  (2) 有next方法  

from collections import Iterable,Iterator   # 调用Iterable和Iterator

lis = [1, 2, 3, 4]
d = iter(lis)   # 相当于 l._iter_()
print(d)        # <list_iterator object at 0x00000206700DC358>
print(next(d))
print(next(d))
print(next(d))
print(next(d))

for i in [1, 2, 3, 4]:
    iter([1, 2, 3, 4])

print(isinstance([1, 2], list))        # 判断一个字符是不是某个特定的数据类型 isinstance(数据, 数据类型)
print(isinstance(lis, Iterable))     # 判断lis是不是迭代器

>>>

<list_iterator object at 0x000002756B321240>
1
2
3
4
True
True

例1:用迭代找出文档中最长的行

F = max(len(x.strip()) for x in open('file_1', 'r'))      # 文件读取,找出最长的行
print(F)       # 最长行字符的个数
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇聊一聊,这些年我用Python爬虫挣.. 下一篇用python实现新词发现程序——基..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目