Python可迭代與迭代器

可迭代:

在Python中如果一個對象有iter( )方法或getitem( )方法,則稱這個對象是可迭代的(Iterable);其中iter( )方法的作用是讓對象可以用for ... in循環遍歷,getitem( )方法是讓對象可以通過“實例名[index]”的方式訪問實例中的元素。換句話說,兩個條件只要滿足一條,就可以說對象是可迭代的。顯然列表List、元組Tuple、字典Dictionary、字符串String等數據類型都是可迭代的。當然因為Python的“鴨子類型”,我們自定義的類中只要實現了iter( )方法或getitem( )方法,也是可迭代的?!傍喿宇愋汀钡母拍钫垍⒖急鞠盗械牡诰牌恼?。

迭代器:

在Python中如果一個對象有iter( )方法和next( )方法,則稱這個對象是迭代器(Iterator);其中iter( )方法是讓對象可以用for ... in循環遍歷,next( )方法是讓對象可以通過next(實例名)訪問下一個元素。注意:這兩個方法必須同時具備,才能稱之為迭代器。列表List、元組Tuple、字典Dictionary、字符串String等數據類型雖然是可迭代的,但都不是迭代器,因為他們都沒有next( )方法。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 我們將要來學習python的重要概念迭代和迭代器,通過簡單實用的例子如列表迭代器和xrange。 可迭代 一個對象...
    派派森森閱讀 405評論 0 0
  • 1 迭代器與for 迭代器(iterator),在許多現代編程語言,如C++,Java等中均有出現。迭代器不是一種...
    櫻雨樓閱讀 491評論 0 1
  • 前段時間聽到這首 達爾文 覺得歌詞挺不錯 就好奇心去查了 達爾文主義 網上的基本介紹也就是 達爾文主義揭示了自然選...
    Cherleen琳琳閱讀 377評論 1 2
  • 遠行之利弊、憂思,如何一言以蔽之呢? 多不必言絮,只潛略其個人感… “克己”、“守心” 我覺得這兩個詞很重要,很重...
    乙木々閱讀 193評論 0 0
  • 所有的離婚究其原因都沒什么大事,都是生活中的瑣事,正驗證了那句話,一個人不能夠到達遙遠目標,不是因為她沒有力氣,不...
    黃震閱讀 133評論 0 0