python 可迭代对象
2022/10/1 14:18:14
本文主要是介绍python 可迭代对象,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
python 可迭代对象
- 可迭代对象关系 如何判断 Iterable 可迭代对象 Iterator 迭代器对象 from collections.abc import Iterable, Iterator print(instance([], Iterable)) 定义 Iterable包含Iterator; Iterable协议规定必须实现__iter__方法,并且返回Iterator; Iterator协议规定必须实现__iter__方法和__next__方法(python2实现next方法), __next__方法返回迭代器的下一个项目 两个自定义迭代器代码块 class Iterator: def __iter__(self): return self def __next__(self): return 1 class Iterator: def __iter__(self): yield self for … in … 迭代器遍历,原理是首先调用 iter() 内部调用__iter__返回Iterator,然后调用 next() 内部调用__next__,直到捕获到StopIteration异常 __getitem__ 当对象只有__getitem__方法时也可以进行for .. in ..遍历,next将进入__getitem__从0开始以下标递增的方式进行迭代 class Test: def __init__(self): self.a = [1, 2, 3] def __getitem__(self, item): print("item:", item) return self.a[item] t = Test() iter_t = iter(t) print(iter_t) next(iter_t) >> <iterator object at 0x00000000028399E8>
这篇关于python 可迭代对象的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型
- 2024-12-23使用python部署一个usdt合约,部署自己的usdt稳定币
- 2024-12-20Python编程入门指南
- 2024-12-20Python编程基础与进阶
- 2024-12-19Python基础编程教程
- 2024-12-19python 文件的后缀名是什么 怎么运行一个python文件?-icode9专业技术文章分享
- 2024-12-19使用python 把docx转为pdf文件有哪些方法?-icode9专业技术文章分享
- 2024-12-19python怎么更换换pip的源镜像?-icode9专业技术文章分享