Python
  • 01、基础篇
    • Python基础篇-001. Python简介
    • Python基础篇-002. Hello World
    • Python基础篇-003. 变量类型(一)
    • Python基础篇-004. 常量
    • Python基础篇-005. 运算符
    • Python基础篇-006. 条件语句
    • Python基础篇-007. 循环语句
    • Python基础篇-008. 变量类型(二)
    • Python基础篇-009. 函数(一)
    • Python基础篇-010. 函数(二)
    • Python基础篇-011. 变量作用域
    • Python基础篇-012. 自定义类(一)
    • Python基础篇-013. 自定义类(二)
    • Python基础篇-014. 模块
    • Python基础篇-015. 异常处理
  • 02、进阶篇
    • Python进阶篇-001. 文件IO
    • Python进阶篇-002. main.py
    • Python进阶篇-003. init.py
    • Python进阶篇-004. all
    • Python进阶篇-005. private
    • Python进阶篇-006. lambda表达式
    • Python进阶篇-007. 推导式
    • Python进阶篇-008. 迭代器
    • Python进阶篇-009. 生成器
    • Python进阶篇-010. 多线程
    • Python进阶篇-011. 数据处理基础函数(一)
    • Python进阶篇-012. 数据处理基础函数(二)
    • Python进阶篇-013. 包管理(一)
    • Python进阶篇-014. 包管理(二)
    • Python进阶篇-015. 包管理(三)
    • Python进阶篇-016. 包管理(四)
    • Python进阶篇-017. requirements.txt
    • Python进阶篇-018. venv
    • Python进阶篇-019. 头部注释
    • Python进阶篇-020. 优雅传参
    • Python进阶篇-021. 连接MySQL
  • 03、实践篇
    • Python实践篇-001. GitBook小工具(一)
    • Python实践篇-002. GitBook小工具(二)
Powered by GitBook
On this page
  • 一、创作声明
  • 二、迭代器
  • 三、写在最后
  1. 02、进阶篇

Python进阶篇-008. 迭代器

[toc]

一、创作声明

进阶篇是对基础篇的补充,这里面更多的是各种常用库、高级语法糖的教程,因此,进阶篇的内容会比较零碎。在创作过程中,同样会借助ChatGPT来辅助。

二、迭代器

迭代器(Iterator)是Python中一种用于遍历可迭代对象(Iterable)的对象。可迭代对象是指实现了__iter__()方法的对象,而迭代器是实现了__iter__()和__next__()方法的对象。

使用迭代器可以逐个访问可迭代对象中的元素,而不需要提前将所有元素加载到内存中。这在处理大型数据集或无限序列时非常有用。

下面是一个简单的迭代器示例:

class MyIterator:
    def __init__(self, data):
        self.data = data
        self.index = 0

    def __iter__(self):
        return self

    def __next__(self):
        if self.index >= len(self.data):
            raise StopIteration
        value = self.data[self.index]
        self.index += 1
        return value

# 创建一个可迭代对象
my_list = [1, 2, 3, 4, 5]

# 创建迭代器
my_iterator = MyIterator(my_list)

# 使用迭代器遍历可迭代对象
for item in my_iterator:
    print(item)

输出结果为:

1
2
3
4
5

在上面的示例中,我们定义了一个名为MyIterator的迭代器类,它接受一个可迭代对象作为参数,并实现了__iter__()和__next__()方法。__iter__()方法返回迭代器本身,而__next__()方法返回可迭代对象中的下一个元素,直到遍历完所有元素时抛出StopIteration异常。

通过使用迭代器,我们可以通过简单的for循环遍历可迭代对象中的元素,而不需要显式地使用索引来访问每个元素。

三、写在最后

更多技术分享,点击传送门:https://github.com/maxiaolu66/profile

PreviousPython进阶篇-007. 推导式NextPython进阶篇-009. 生成器

Last updated 1 year ago