Python通過(guò)遞歸函數(shù)輸出嵌套列表元素
1.先用 for 循環(huán)取
for item in l: if isinstance(item ,list): for newitem in item: print(newitem) else: print(item
輸出:
1
2
3
4
5
6
#利用 for 循環(huán)取值,有幾層嵌套就要寫(xiě)幾層 for 循環(huán),否則不識(shí)別。 l=[1,2,[3,4],[5,6,[7,8]]] for item in l: if isinstance(item ,list): for newitem in item: print(newitem) else: print(item
輸出
1
2
3
4
5
6
[7, 8]
2.遞歸函數(shù)實(shí)現(xiàn):
遞歸函數(shù)實(shí)現(xiàn):
def getitem(l): for item in l: if isinstance(item,list): getitem(item) else: print(item) getitem(l)
輸出:
1
2
3
4
5
6
7
8
9
10
變式1:遇到類(lèi)表就縮進(jìn)一次:
def getitem(l,level=0): for item in l: if isinstance(item,list): getitem(item,level+1) else: for tab in range(level): print('\t',end='' #輸出一個(gè) 制表符,并且將 print 后面的換行符去掉,這樣就是了縮進(jìn) print(item) getitem(l)
輸出
變式2:加入開(kāi)啟機(jī)制,是否縮進(jìn)
def getitem(l,level=0,count=False): for item in l: if isinstance(item,list): getitem(item,level+1,count) else: if count: for tab in range(level): print('\t',end='' #輸出一個(gè) 制表符,并且將 print 后面的換行符去掉,這樣就是了縮進(jìn) print(item) print(item) getitem(l)
輸出
1
2
3
4
5
6
7
8
9
10
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解
Matplotlib?提供了大量配置參數(shù),這些參數(shù)可以但不限于讓我們從整體上調(diào)整通過(guò)?Matplotlib?繪制的圖形樣式,下面我們就來(lái)看看如何巧妙的運(yùn)用這些參數(shù)吧2023-08-08python3 設(shè)置多進(jìn)程名稱并在ps命令中可見(jiàn)(Centos7 系統(tǒng))
setproctitle 是一個(gè) Python 模塊,用于設(shè)置進(jìn)程標(biāo)題(process title),通過(guò)設(shè)置進(jìn)程標(biāo)題,可以讓進(jìn)程在系統(tǒng)級(jí)的進(jìn)程管理工具中展示自定義的名稱,方便用戶查看和管理進(jìn)程,本文介紹python3 設(shè)置多進(jìn)程名稱并在ps命令中可見(jiàn),感興趣的朋友一起看看吧2024-03-03Python利用Nagios增加微信報(bào)警通知的功能
Nagios是一款開(kāi)源的免費(fèi)網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機(jī)狀態(tài),交換機(jī)路由器等網(wǎng)絡(luò)設(shè)置,打印機(jī)等,本文給大家介紹Python利用Nagios增加微信報(bào)警通知的功能,需要的朋友參考下2016-02-02Python結(jié)合百度語(yǔ)音識(shí)別實(shí)現(xiàn)實(shí)時(shí)翻譯軟件的實(shí)現(xiàn)
這篇文章主要介紹了Python結(jié)合百度語(yǔ)音識(shí)別實(shí)現(xiàn)實(shí)時(shí)翻譯軟件的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01利用python模擬sql語(yǔ)句對(duì)員工表格進(jìn)行增刪改查
這篇文章主要給大家介紹了關(guān)于利用python模擬sql語(yǔ)句實(shí)現(xiàn)對(duì)員工表格進(jìn)行增刪改查的相關(guān)資料,文中介紹了詳細(xì)的需求以及示例代碼,對(duì)大家的理解和學(xué)習(xí)具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-07-07Python中json.dumps()函數(shù)的使用解析
json.dumps將一個(gè)Python數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為JSON,本文介紹了Python中json.dumps()函數(shù)的具體使用方法,以及和dump的區(qū)別,感興趣的可以了解一下2021-05-05python實(shí)現(xiàn)126郵箱發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)126郵箱發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05python3.8中關(guān)于sklearn問(wèn)題(win10)
這篇文章主要介紹了python3.8中關(guān)于sklearn問(wèn)題(win10),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06