目錄
什麼是迭代?
可**物件(iterable)都有哪些?
如何判斷乙個物件是否能夠被迭代
什麼是迭代器呢?
迭代是訪問容器元素的一種方式
列表 字典 元祖 字串 生成器
1,匯入 from collections import iterable或者 from collections.abc import iterable
2,用isinstance(obj,iterable)做判斷,如果返回結果是true,則可迭代,否則不能夠迭代
from collections import iterable
s="hghdgslgsld"
def diedai(s):
# 判斷是否是可迭代的物件
if isinstance(s,iterable):
for i in s:
print(i)
else:
print("此物件不能夠迭代")
diedai(s)
在python,能夠被全域性函式next呼叫,並且返回下乙個值的物件,就是迭代器
可迭代物件不一定是迭代器,迭代器都是可迭代物件
結論:凡是可作用於 for 迴圈的物件都是 iterable 型別;
凡是可作用於 next() 函式的物件都是 iterator 型別
可迭代物件不一定是迭代器,迭代器都是可迭代物件
集合資料型別如 list 、 dict 、 str 等是 iterable 但不是 iterator ,
不過可以通過iter() 函式獲得乙個 iterator 物件,傳入乙個可迭代的物件,獲得乙個迭代器iterator
目的是在使用迭代器的時候,減少記憶體的占用。
python中迭代器 python中的迭代器
如果給定乙個list或tuple,我們可以通過for迴圈來遍歷這個list或tuple,這種遍歷我們稱為迭代 iteration d for key in d print key ac b當我們使用for迴圈時,只要作用於乙個可迭代物件,for迴圈就可以正常執行,而我們不太關心該物件究竟是list還...
Python中的迭代器
可以直接作用於for迴圈的資料型別有以下幾種 一類是集合資料型別,如list tuple dict set str等 一類是generator,包括生成器和帶yield的生成器函式。這些可以直接作用於for迴圈的物件統稱為可迭代物件 iterable python的for迴圈本質上就是通過不斷呼叫n...
python中的迭代器
什麼是迭代器?迭代器是帶有next方法的簡單物件,當然也要實現 iter 函式。迭代器能在一串行的值上進行迭代,當沒有可供迭代時,next方法就會引發stopiteration 的異常。python中有很多的物件都是迭代器,例如 列表,元素,字串,檔案,對映,集合 如何使用迭代器?1.for 變數 ...