本節是對可迭代物件和迭代器的簡單總結,希望對大家有幫助。
對於乙個初級選手而言,,了解即可,,不過這對大家以後高階可能會有一定的幫助。
*****==悅分享,越快樂。我們一起成長。哈啊哈哈。。。。。。。。
物件,乙個實實在在存在的值
可迭代:更新迭代,迴圈的乙個過程,每乙個內容都是新的·
可迭代物件:可以進行迴圈更新的乙個實實在在的值。
專業角度:可迭代物件?內部含有「——iter——「方法的物件
str list tuple dict set range 檔案控制代碼(fp)
優點:1.儲存的資料能直接顯示,
2.擁有許多方法,操作方便
缺點:1.佔記憶體,
2.不可以直接for迴圈直接取值(但可以通過索引,key)
在這裡插入**片
#檢查物件是否是乙個迭代物件
list=[
3234
,23432
]for i in
dir(
list):
if i==
'__iter__'
:print
('可迭代').
..list=[
3234
,23432].
..for i in
dir(
list):
...if i==
'__iter__':.
..print
('可迭代').
.. 可迭代
迭代器:可迭代物件轉化為迭代器,通過dir()轉化
字面意思:更新迭代的工具
專業角度:內部夠『iter』並且含有』next』方法的物件,就是迭代器
優點:1.節省記憶體
2.惰性機制,一次取乙個值
缺點:1.速度慢了(個人覺得,迴圈是個bug)
2.指標只能單方向走,去乙個值,迭代器裡面就少乙個值)
在這裡插入**片
list=[
3234
,23432
]object
=iter
(list
)#/list.__iter__() #轉化為迭代器***
print
(type
(object))
print
(next
(object))
#取值,一次取乙個
list=[
3234
,23432].
....
.object
=iter
(list
)#/list.__iter__() #轉化為迭代器..
....
print
(type
(object))
....
..print
(next
(object))
#取值,一次取乙個..
....
<
class
'list_iterator'
>
3234
*******==for迴圈乙個可迭代物件,首先會把這個物件轉化為乙個迭代器,可以也可以用while迴圈模擬for迴圈
1.可迭代物件是乙個操作方法較多,且比較直觀,儲存資料西昂對少(幾百萬個,8g記憶體可以)的資料集
2.當你記憶體多,且對書資料操作靈活
2.迭代器,節省記憶體,可以記錄取值位置,可以直接迴圈+next方法去之,但不知管,操作單一
但資料量過大,大到足以陳博阿記憶體或者你一節省記憶體為首要罌粟,將資料集設定為乙個迭代一是不錯的**
迭代器 可迭代物件 迭代器物件
今天的學習內容有 迭代器 可迭代物件 迭代器物件 for迴圈內部原理 生成器和生成器表示式 面向過程程式設計 迭代就是指更新換代的過程,要重複進行,而且每次的迭代都必須基於上一次的結果。我們使用for迴圈的時候就是把元素從容器裡乙個個取出來,這種過程其實就是迭代。迭代器 迭代取值的工具。迭代器的作用...
可迭代物件 迭代器
一 可以直接作用於for迴圈的資料型別 1.可迭代物件 iterable 1 整合資料型別 list tuple dict set str 2 生成器 generator 3 帶yield的generator函式 2.迭代器 iterator 可以被next 函式呼叫並不斷返回下乙個值的物件。二 如...
可迭代物件與迭代器物件
li 1,4,5,2 for x in li print x s zxcvb for x in s print x 確保in後面是乙個可迭代物件,可通過python 內建函式iter 得到乙個迭代器物件。用可迭代物件得到迭代器 使用標準庫下的itertools.islice,它能返回乙個迭代物件切片...