今天有點囧
a=['***x_game.sql', '***x_game_sp.sql', '***x_gamelog_sp.sql', '***x_gamelog.sql']
for i in a:
if 'gamelog' in i:
a.remove(i)
print a
['***x_game.sql', '***x_game_sp.sql', '***x_gamelog.sql']
歷遍的過程中明顯miss掉了 '***x_gamelog.sql' 這個專案,大家可以自己試試,為什麼會沒刪完,這到底是什麼原因呢?
我們再驗證一次
for i in a:
if 'gamelog' in i:
print i,
***x_gamelog_sp.sql ***x_gamelog.sql
看到結果,如果我們不對它進行remove的操作,是不會有問題的。完全可以歷遍。
這樣我們大概知道了,在對列表進行remove操作的時候,用歷遍的方法是不行的。那如何解決?
a1=a[::] #這裡我們映象乙個列表a1,但是千萬別用a1=a,為什麼,我們可以測試下 a1=a[::] a1==a true; a1 is a false; 如果用a1=a a1==a pkiuvubhlstrue; a1 is a truepkiuvubhls,下來大家可以測試下,這個是列表的乙個特性。
for i in a1:
if 'gamelog' in i:
a.remove(i)
print a
['***x_game.sql', '***x_game_sp.sql']
再來乙個例子
[ ]
因為有'張三',所以刪除 整一行,怎麼操作
思路是找到要刪除的元素在列表中的索引,然後呼叫 pop,索引作為引數。pop 返回被刪除的元素。佇列剩下的就是刪除該索引元素之後的剩餘的。
lname = [ ]
for x in range(len(lname)): #列表遍歷
if l[x]['name'] == u'張三':
lname.pop(x) #用 pop。
break #操作完成,break 出去
好了,今天就先到這裡
本文標題: python刪除列表內容
本文位址:
python刪除列表內容 python刪除列表內容
今天有點囧 歷遍的過程中明顯miss掉了 x gamelog.sql 這個專案,大家可以自己試試,為什麼會沒刪完,這到底是什麼原因呢?我們再驗證一次 看到結果,如果我們不對它進行remove的操作,是不會有問題的。完全可以歷遍。這樣我們大概知道了,在對列表進行remove操作的時候,用歷遍的方法是不...
python刪除列表元素 Python列表元素分組
比如列表 0,0,0,1,1,2,3,3,3,2,3,3,0,0 分割成 0,0,0 1,1 2 3,3,3 2 3,3 0,0 如何解決這樣的問題呢?1 首先說明,如果這樣的題目都不能寫出 原因在基本的迴圈判斷沒有搞清楚。2 黃哥在如何訓練自己的程式設計思路 文章所說的,做習題,要像開發專案的流程...
Python 列表迴圈刪除
列表迴圈刪除中,第一次很容易採坑 如下面案例,我們想把列表中 2全部刪除 alist 1 2,3 1,2 2,3 4 for i in alist if i 2 alist.remove i print alist 我們希望得到 1,3,1,3,4 結果 1,3,1,2,3,4,有乙個2漏掉了 fo...