Python學習筆記 迭代器

2021-09-26 08:56:10 字數 1190 閱讀 4990

from collections import iterable

from collections import iterator

#可迭代物件:可以直接作用於for迴圈的物件統稱為可迭代物件(iterable);

#可以用isinstance()去判斷乙個物件是否是iterable物件

#可以直接作用於for的資料型別一般分兩種

#1、集合資料型別,如list   tuple   dict   set   string

#2、generator,包括生成器和帶yidle的generator  function

#迭代器:不但可以作用於for迴圈,還可以唄next()函式不斷呼叫並返回下乙個值

#直到最後丟擲乙個錯誤stopiteration錯誤表示無法繼續返回下乙個值

#可以被next()函式呼叫並不斷返回下乙個值得物件稱為迭代器(iterator物件)

#可以用isinstance()去判斷乙個物件是否是iterator物件

print(isinstance(,iterable))   #true

print(isinstance({},iterable))   #true

print(isinstance((),iterable))   #true

print(isinstance("",iterable))   #true

print(isinstance((x for x in range(10)),iterable))   #true

print(isinstance(,iterator))   #false

print(isinstance({},iterator))   #false

print(isinstance((),iterator))   #false

print(isinstance("",iterator))   #false

print(isinstance((x for x in range(10)),iterator))   #true

l = (x for x in range(5))

print(next(l))

print(next(l))

print(next(l))

print(next(l))

print(next(l))

#轉成iterator物件

a = iter([1,2,3,4,5])

Python學習筆記 迭代器和迭代器協議

術語概念解釋 關於 for 迴圈 寫乙個迭代器 1 迭代器協議 迭代器協議是一種約定,即物件必須提供乙個 next 方法,執行該方法要麼返回迭代中的下一項,要麼丟擲乙個 stopiteration 異常,終止迭代。2 迭代器 iterator 迭代器是一種物件,一種可以被 next 函式呼叫並不斷返...

python學習筆記10(迭代器)

可迭代物件 可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 可以用isinstance 去判斷乙個物件是否是iterable物件 可以直接作用於for迴圈的資料型別一般分兩種 1 集合資料型別,如list tuple dict set string 2 是generator,包括生...

python學習筆記十四 迭代器

迭代是python最強大的功能之一,是訪問集合元素的一種方式。迭代器是乙個可以記住遍歷的位置的物件。迭代器物件從集合的第乙個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會後退。迭代器有兩個基本的方法 iter 和next 字串,列表或元組物件都可用於建立迭代器 list 1,2,3,4...