国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > python如何使用__iter__()展现外部状态

python如何使用__iter__()展现外部状态

头像

小妮浅浅

2021-05-10 09:51:503577浏览 · 0收藏 · 0评论

(推荐操作系统:windows7系统、Python 3.9.1、DELL G3电脑。)

1、如果你想让你的生成器暴露外部状态给用户, 别忘了你可以简单的将它实现为一个类,然后把生成器函数放到 __iter__() 方法中过去。比如:

from collections import deque
 
class linehistory:
    def __init__(self, lines, histlen=3):
        self.lines = lines
        self.history = deque(maxlen=histlen)
 
    def __iter__(self):
        for lineno, line in enumerate(self.lines, 1):
            self.history.append((lineno, line))
            yield line
 
    def clear(self):
        self.history.clear()

2、为了使用这个类,你可以将它当做是一个普通的生成器函数。然而,由于可以创建一个实例对象,于是你可以访问内部属性值,比如 history 属性或者是 clear() 方法。代码示例如下:

with open('somefile.txt') as f:

    lines = linehistory(f)

    for line in lines:

        if 'python' in line:

            for lineno, hline in lines.history:

                print('{}:{}'.format(lineno, hline), end='')

以上就是python使用__iter__()展现外部状态的方法,希望能对大家有所帮助。更多Python学习指路:python基础教程

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

女子蹲下尿裤子的视频| 欧美人动物PPT免费模板大全| 朋友的母亲中字ID| 少女たちよ在线播放电视剧| 小蜜桃免费观看高清电视剧 | 《初次深交流》韩剧| 闺蜜老公把我压在怀里| 欧美大片PPT免费PPT| 婆媳双飞杨钰莹阅读| 叛逆儿子暴躁老妈的表现 | 《伦敦空姐美版2023》| 日韩电影在线观看高清版电视剧| 停不了的爱温碧霞| 把腿张开臊烂你男男开荤粗肉动浸| 日韩电影| 老公不在家憋不住了该怎么办| 午马影视免费观看电视剧| 《再来一次好吗》免费观看| 人野兽马狗猪大全| 把腿扒开让我添30分钟| 被窝影院在线观看电视剧全职高手| 韩国漫画免费漫画页面浸画弹窗| 我寄宿在妈妈闺蜜家电视剧 | 能不能在办公室干事你电视剧| 我在开会他在下添好爽| 白带内裤拉丝尿液| B站暴躁女RAPPER| 黄金网站9.1入口免费| 《被按摩的人妻4》| 姐姐片多多免费高清电视剧 | 为什么妓女磨两下就很多水| 我要富贵| 是空无限传媒免费观看电视剧 | 初尝少妇王老师的第一次在线观看| 狼人加鲁鲁兽天赋澳彩心水| 免费观看已满十八岁电视剧动漫| 魔兽世界技能| 下面的嘴可比上面的诚实| 久久久无码AV精品亚洲星娜美| 老旺的大肉蟒进进出出| 11人裸体航班女服务员是谁