Python迭代器及自定义迭代器
发布日期:2021-05-12 20:11:35 浏览次数:24 分类:精选文章

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

Python������������������������������

���Python������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Python���������������������iter()���������next()���������������������������������������������������������

������������������������

���Python���������������������������������������������������������for���������������������������������������������������������������������������������������������������������������������������������������������������������������for������������������������������������������������

������������������

������������������������������������������������������������������isinstance()������������������

from collections.abc import Iterable
list_a = [1, 2, 3]
print(isinstance(list_a, Iterable)) # ������: True

������������������

Python���������������������������������������������������������������������������������������������������������������������������������iter()������������������������������������������������������������������������������������next()������������������������������������������������

iter()���next()������

  • iter()������: ���������������������������������������������������

    list_b = ['ppp', 'yyy', 'ttt', 'hhh', 'ooo', 'nnn']
    iterator_b = iter(list_b)
  • next()������: ������������������������__next__������������������������������������������������������������������

    print(next(iterator_b))  # ������: ppp
    print(next(iterator_b)) # ������: yyy
    print(next(iterator_b)) # ������: ttt

������������������������������������������������������������������������������next()���������������StopIteration���������

������������������

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������

������������������������������������������������������������

class FeiboIterator:
def __init__(self, n):
self.n = n
self.index = 0
self.num1 = 0
self.num2 = 1
def __next__(self):
if self.index < self.n:
num = self.num1
self.num1, self.num2 = self.num2, self.num1 + self.num2
self.index += 1
return num
else:
raise StopIteration
def __iter__(self):
return self
gt;:: ���������������������������������
fb = FeiboIterator(20)
for num in fb:
print(num, end=' ')

������������������������������������������������20���������������������������������������������������������������������������������������������������������������������������

������

���������������������������������������������������������������������������������������iter()���next()������������������������������������������������������������������������������������������������������������������������������������������������

上一篇:Python生成器实现及yield关键字
下一篇:Python数据库编程pymysql

发表评论

最新留言

表示我来过!
[***.240.166.169]2025年04月07日 19时33分12秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章