中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是Python中的迭代器

發布時間:2020-08-25 14:15:21 來源:億速云 閱讀:679 作者:Leah 欄目:編程語言

什么是Python中的迭代器?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

迭代器 

迭代是訪問集合元素的一種方式。迭代器是一個可以記住遍歷的位置的對象。迭代器對象從集合的第一個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會后退。

1.可迭代對象 

以直接作用于for循環的數據類型有以下幾種:

一類是集合數據類型,如list、tuple、dict、set、str等;

一類是generator,包括生成器和帶yield的generator function。

這些可以直接作用于for循環的對象統稱為可迭代對象:Iterable。

2.判斷是否可以迭代 

可以使用isinstance()判斷一個對象是否是Iterable對象:

什么是Python中的迭代器

運行結果:

什么是Python中的迭代器

而生成器不但可以作用于for循環,還可以被next()函數不斷調用并返回下一個值,直到最后拋出StopIteration錯誤表示無法繼續返回下一個值了。

3.迭代器

可以被next()函數調用并不斷返回下一個值的對象稱為迭代器:Iterator。

什么是Python中的迭代器

運行結果:

什么是Python中的迭代器

4.iter()函數 

生成器都是Iterator對象,但list、dict、str雖然是Iterable,卻不是Iterator。

把list、dict、str等Iterable變成Iterator可以使用iter()函數:

什么是Python中的迭代器

運行結果:

什么是Python中的迭代器

總結

·凡是可作用于for循環的對象都是Iterable類型;

·凡是可作用于next()函數的對象都是Iterator類型

·集合數據類型如list、dict、str等是Iterable但不是Iterator,不過可以通過iter()函數獲得一個Iterator對象。

·目的是在使用集合的時候,減少占用的內容。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

麟游县| 朝阳县| 萝北县| 新密市| 修武县| 平阳县| 临夏市| 乐陵市| 壶关县| 绵竹市| 池州市| 攀枝花市| 荆门市| 葵青区| 沛县| 兴宁市| 尚义县| 海宁市| 津市市| 称多县| 宕昌县| 河东区| 北川| 育儿| 青铜峡市| 安西县| 临夏市| 盐源县| 宁明县| 忻城县| 嘉兴市| 岗巴县| 横峰县| 阳城县| 珠海市| 漳浦县| 和田县| 蒙城县| 古蔺县| 定日县| 平乡县|