Python 可迭代對象 iterable的具體使用
前置知識(shí)
如果給定一個(gè) list 或 tuple,我們可以通過 for 循環(huán)來遍歷這個(gè) list 或 tuple,這種遍歷我們稱為迭代(Iteration)
在 Python 中,迭代是通過 for ... in 來完成的
lists = [1, 2, 3, 4, 5]
for i in lists:
print(i)
可迭代對象
for 循環(huán)不僅可以用在 list 或 tuple 上,還可以用在其他可迭代對象上
list 這種數(shù)據(jù)類型雖然有下標(biāo),但很多其他數(shù)據(jù)類型是沒有下標(biāo)的,但是只要是可迭代對象,無論有無下標(biāo),都可以迭代
dicts = {
"a": 1,
"b": 2
}
for i in dicts:
print(i)
# 輸出結(jié)果
a
b
如何判斷一個(gè)對象是否是可迭代對象?
from collections import Iterable
lists = [1, 2, 3, 4, 5]
dicts = {
"a": 1,
"b": 2
}
print(isinstance(lists, Iterable))
print(isinstance(dicts, Iterable))
print(isinstance({"test"}, Iterable))
print(isinstance(1234, Iterable))
# 輸出結(jié)果
True
True
True
False
enumerate 函數(shù)
循環(huán)列表的話,默認(rèn)是只返回元素值,如果想同時(shí)拿到元素值和對應(yīng)的下標(biāo)值呢?
enumerate 函數(shù)可以把 list 變成一個(gè) 索引-元素對的迭代對象,然后循環(huán)遍歷這個(gè)對象即可
lists = [1, 2, 3, 4, 5]
# 看看是不是迭代對象
print(isinstance(enumerate(lists), Iterable))
# 循環(huán)
for ind, val in enumerate(lists):
print(ind, val)
# 輸出結(jié)果
True
0 1
1 2
2 3
3 4
4 5
多嵌套列表
for x, y in [(1, 1), (2, 4), (3, 9)]:
print(x, y)
# 輸出結(jié)果
1 1
2 4
3 9
總結(jié)
任何可迭代對象都可以作用于 for 循環(huán),包括我們自定義的數(shù)據(jù)類型,只要符合迭代條件,就可以使用 for 循環(huán)
到此這篇關(guān)于Python 可迭代對象 iterable的具體使用的文章就介紹到這了,更多相關(guān)Python 可迭代對象 iterable內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實(shí)現(xiàn)NB-IoT模塊遠(yuǎn)程控制
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)NB-IoT模塊遠(yuǎn)程控制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06
Python實(shí)現(xiàn)讀取PDF中的文本,圖片與文檔屬性
PDF格式因其版式固定、內(nèi)容穩(wěn)定而被廣泛使用,本文將介紹如何用Python實(shí)現(xiàn)PDF文本讀取,圖片提取以及文檔屬性讀取?三大核心操作,適用于信息抽取,電子檔案處理等場景,有需要的可以了解下2025-06-06
Python動(dòng)態(tài)生成多維數(shù)組的方法示例
這篇文章主要介紹了Python動(dòng)態(tài)生成多維數(shù)組的方法,涉及Python數(shù)組動(dòng)態(tài)遍歷、添加、打印等相關(guān)操作技巧,需要的朋友可以參考下2018-08-08
python3.7 openpyxl 在excel單元格中寫入數(shù)據(jù)實(shí)例
這篇文章主要介紹了python3.7 openpyxl 在excel單元格中寫入數(shù)據(jù)實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
python中class(object)的含義是什么以及用法
這篇文章主要介紹了python中class(object)的含義是什么以及用法說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
從基礎(chǔ)到高階詳解Python字典轉(zhuǎn)換為XML的完全指南
在現(xiàn)代軟件開發(fā)中,??數(shù)據(jù)交換格式??的選擇對系統(tǒng)間通信至關(guān)重要,本文將全面探討Python中字典到XML的轉(zhuǎn)換技術(shù),從基礎(chǔ)實(shí)現(xiàn)到高級(jí)應(yīng)用,為開發(fā)者提供完整的解決方案2025-09-09
Flask框架學(xué)習(xí)筆記之模板操作實(shí)例詳解
這篇文章主要介紹了Flask框架學(xué)習(xí)筆記之模板操作,結(jié)合實(shí)例形式詳細(xì)分析了flask框架模板引擎Jinja2的模板調(diào)用、模板繼承相關(guān)原理與操作技巧,需要的朋友可以參考下2019-08-08

