Python通過遞歸函數(shù)輸出嵌套列表元素
更新時間:2020年10月15日 14:35:14 作者:lincappu
這篇文章主要介紹了Python通過遞歸函數(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)取值,有幾層嵌套就要寫幾層 for 循環(huán),否則不識別。
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ù)實現(xiàn):
遞歸函數(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:遇到類表就縮進一次:
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='' #輸出一個 制表符,并且將 print 后面的換行符去掉,這樣就是了縮進
print(item)
getitem(l)
輸出

變式2:加入開啟機制,是否縮進
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='' #輸出一個 制表符,并且將 print 后面的換行符去掉,這樣就是了縮進
print(item)
print(item)
getitem(l)
輸出
1
2
3
4
5
6
7
8
9
10
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
python3 設置多進程名稱并在ps命令中可見(Centos7 系統(tǒng))
setproctitle 是一個 Python 模塊,用于設置進程標題(process title),通過設置進程標題,可以讓進程在系統(tǒng)級的進程管理工具中展示自定義的名稱,方便用戶查看和管理進程,本文介紹python3 設置多進程名稱并在ps命令中可見,感興趣的朋友一起看看吧2024-03-03
Python結合百度語音識別實現(xiàn)實時翻譯軟件的實現(xiàn)
這篇文章主要介紹了Python結合百度語音識別實現(xiàn)實時翻譯軟件的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01
Python中json.dumps()函數(shù)的使用解析
json.dumps將一個Python數(shù)據(jù)結構轉換為JSON,本文介紹了Python中json.dumps()函數(shù)的具體使用方法,以及和dump的區(qū)別,感興趣的可以了解一下2021-05-05

