【Python零基础入门篇 · 30】:自定义迭代器类、异常类、生成器

简介: 【Python零基础入门篇 · 30】:自定义迭代器类、异常类、生成器

自定义迭代器


自定义迭代器类的条件


  • iter方法:返回迭代器对象本身


  • next方法:返回容器下一个元素或可抛出StopIteration异常




举例一

ca6af5c63513444eacc554c99b306698.png


以上代码可改写为

a284898516744495aef0cb08463454ca.png


举例二

fadcdd694a594ce59b52108c59eafb7c.png

举例三

47caf3579411421083fb764de35f7916.png



异常类


自定义异常类,需要继承Exception类。只要是定义的类继承自Exception,这个类就是一个异常类。

举例一

bda5b92eea424aa389e957ddb47966c8.png


举例二


47fe884390264341af80aa221550bda1.png




生成器


生成器:python提供的一种非常见简便的语法能让我们来自己写出迭代器

只要再def中有yield关键字的就称为生成器


生成器就是一个迭代器

定义方式:类似于列表推导式,把列表推导式的[]改为()




967dc3d62cef4bc495ac3bcf07d12a1d.png



生成器函数

生成器函数:python中,使用了yield的函数成为生成器(generator)

  • 普通函数:返回值用return,生成器函数使用yield语句
  • yield语句一次返回一个结果,在每个结果中间,挂起函数,以使下一次从它离开的地方继续执行
  • yield效果使函数中断。并保存中断状态


d893a24f959c469fb073e4cbf5b29727.png


以上代码可改写为

e510d355dbe146e58dab4809b4f9a612.png


举例:处理文件

处理文件:用户指定要查找的文件和内容,将文件中要查的内容的每一行都打印出来。


步骤


  1. 写一个函数,参数是文件和内容


  1. 文件操作——open()函数


  1. 查找内容


  1. 找到后输出



具体实现

  • 在F盘中创建一个记事本文件并写上内容

74fdf4c925a149418b7ba0083bc84f1f.png


045f32a2861e4dc6a864d3f12f51805f.png

相关文章
|
8天前
|
缓存 供应链 芯片
电子元件类商品 item_get - 商品详情接口深度分析及 Python 实现
电子元件商品接口需精准返回型号参数、规格属性、认证及库存等专业数据,支持供应链管理与采购决策。本文详解其接口特性、数据结构与Python实现方案。
|
13天前
|
存储 大数据 Unix
Python生成器 vs 迭代器:从内存到代码的深度解析
在Python中,处理大数据或无限序列时,迭代器与生成器可避免内存溢出。迭代器通过`__iter__`和`__next__`手动实现,控制灵活;生成器用`yield`自动实现,代码简洁、内存高效。生成器适合大文件读取、惰性计算等场景,是性能优化的关键工具。
146 2
|
19天前
|
缓存 监控 供应链
唯品会自定义 API 自定义操作深度分析及 Python 实现
唯品会开放平台提供丰富API,支持商品查询、订单管理、促销活动等电商全流程操作。基于OAuth 2.0认证机制,具备安全稳定的特点。通过组合调用基础接口,可实现数据聚合、流程自动化、监控预警及跨平台集成,广泛应用于供应链管理、数据分析和智能采购等领域。结合Python实现方案,可高效完成商品搜索、订单分析、库存监控等功能,提升电商运营效率。
|
19天前
|
缓存 监控 供应链
京东自定义 API 操作深度分析及 Python 实现
京东开放平台提供丰富API接口,支持商品、订单、库存等电商全链路场景。通过自定义API组合调用,可实现店铺管理、数据分析、竞品监控等功能,提升运营效率。本文详解其架构、Python实现与应用策略。
缓存 监控 供应链
33 0
缓存 监控 数据挖掘
34 0
|
1月前
|
大数据 数据处理 数据安全/隐私保护
Python3 迭代器与生成器详解:从入门到实践
简介:本文深入解析Python中处理数据序列的利器——迭代器与生成器。通过通俗语言与实战案例,讲解其核心原理、自定义实现及大数据处理中的高效应用。
75 0
|
2月前
|
传感器 数据采集 监控
Python生成器与迭代器:从内存优化到协程调度的深度实践
简介:本文深入解析Python迭代器与生成器的原理及应用,涵盖内存优化技巧、底层协议实现、生成器通信机制及异步编程场景。通过实例讲解如何高效处理大文件、构建数据流水线,并对比不同迭代方式的性能特点,助你编写低内存、高效率的Python代码。
126 0
|
3月前
|
存储 API 数据库
自动发短信的软件,批量自动群发短信,手机号电话号生成器【python框架】
这个短信群发系统包含以下核心功能: 随机手机号生成器(支持中国号码) 批量短信发送功能(使用Twilio API)
|
3月前
|
人工智能 数据安全/隐私保护 Python
小红书图文生成器,小红书AI图文生成工具,python版本软件
Pillow库自动生成符合平台尺寸要求的配图7;3)利用Playwright实现自动化发布流程6。

推荐镜像

更多