Python笔记-Collection中Iterable、Iterator和Generator的区别
生活随笔
收集整理的這篇文章主要介紹了
Python笔记-Collection中Iterable、Iterator和Generator的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Iterable
Iterable是Python集合的一種,導入方式為from collections import Iterable。Iterable對象都具有__iter__()方法,可以被for循環。例如list,tuple,dictionary,string都是Iterable。 Iterator Iterable也是Python集合的一種,導入方式為from collections import Iterator。Iterator是Iterable的子類,Iterator對象都具有__iter__()和__next__()方法,Iterator可以通過next()獲取其下一個數據。 Iterator的生成方式是通過iter()方法,或為類定義__iter__()和__next__(),從而使類成為Iterator。 Generator Generator也是Python集合的一種,導入方式為from?collections import Generator。Generator是Iterator的子類。 Generator的生成方式是通過帶yield的函數或()表達式。 一張圖概括上面的繼承關系:?
?
| ? | 導入方式 | 舉例 |
| Iterable | from collections import Iterable | from collections import Iterable, Iterator, Generator l1 = [1, 2, 3] # List是Iterable,但不是Iterator isinstance(l1, Iterable) # True isinstance(l1, Iterator) # False |
| Iterator | from collections import Iterator | it1 = iter([1, 2, 3]) # it1是Iterator isinstance(l1, Iterable) # True isinstance(l1, Iterator) # True |
| Generator | from collections import Generator | g1 = (i for i in [1, 2, 3]) # g1是Generator isinstance(g1, Iterable) # True isinstance(g1, Iterator) # True isinstance(g1, Generator) # True ? |
?
總結
以上是生活随笔為你收集整理的Python笔记-Collection中Iterable、Iterator和Generator的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 王者荣耀ag超玩会为什么退出kpl 最新
- 下一篇: Python处理小学体育中的跑步计时数据