Python 打印嵌套list中每個數據(遍歷列表)


 

new_list = ["H1","H2",1999]  
  
for each_list in new_list:  
    print (each_list);  

 

若列表中包含嵌套列表,怎樣處理?

笨方法:判斷列表中元素是不是列表;並繼續使用for來循環打印, 缺點:多個嵌套列表時會使代碼過長過重復 難讀

1 new_list = ["H1","H2",1999,["hello","day"]]  
2   
3 for each_list in new_list:  
4     if isinstance(each_list,list):  
5         for new_each in each_list:  
6             print (new_each)  
7     else:  
8         print (each_list);  

如果想遇到列表就縮進一次怎么辦?

 

增加一個形參唄;

 1 def each_list(list_name,level=0):  
 2     for yuansu in list_name:  
 3         if isinstance(yuansu,list):   #判斷當前元素是不是列表  
 4             each_list(yuansu,level+1) #如是,則遞歸調用,並且標記當前元素是列表  
 5         else:  
 6             for tab in range(level):#固定次數  
 7                 print ("\t",end='')  
 8             print (yuansu)  
 9   
10   
11 new_list = ["H1","H2",1999,["hello","day",["one","two"]]]  
12   
13 each_list(new_list)  

如果加入一個開啟機制,不想加縮進&想加縮進 怎么辦;

再次加入一個形參控制

 1 def each_list(list_name,count=False,level=0):  #加入控制形參 count 默認為不開啟縮進  
 2     for yuansu in list_name:  
 3         if isinstance(yuansu,list):   #判斷當前元素是不是列表  
 4             each_list(yuansu,count,level+1) #如是,則遞歸調用,並且標記當前元素是列表  
 5         else:  
 6             if count:  #判斷是否開啟縮進  
 7                 for tab in range(level):#固定次數  
 8                     print ("\t",end='')  
 9                 print (yuansu)  
10             else:  
11                 print (yuansu)  
12   
13   
14 new_list = ["H1","H2",1999,["hello","day",["one","two"]]]  
15   
16 each_list(new_list)  

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM