Re: [問題] 刪除list中特定的element

看板Python作者 (←這人是超級笨蛋)時間10年前 (2014/02/02 18:09), 編輯推噓2(202)
留言4則, 4人參與, 最新討論串2/3 (看更多)
※ 引述《neurone (明月照大江)》之銘言: : 小弟有個問題請各位大師,我想要刪掉input list中特定的element : 以下為例,想要刪掉值為0,9 的element。但是index=7的0 刪不掉。 : 請問程式碼哪裡出錯造成這樣的問題? : 謝謝各位撥冗解救小弟 : ================================ : input = [0,0,1,2,3,4,0,5,6,7,8] : del_char = [0,9] : print input : for item in input: : if item in del_char: : input.remove(item) : print input : ================================ : 預期結果:[1,2,3,4,5,6,7,8] : 實際結果:[1,2,3,4,0,5,6,7,8] Previously: #1I6BcVm5 一句總結就是你不能這樣寫, 完 不過最近過年所以買一送一 比較 Pythonic 的寫法應該是用 list comprehension 造一個新的 input_list = [0,0,1,2,3,4,0,5,6,7,8] del_char = [0,9] input_list = [ele for ele in input if ele not in del_char] 然後再送你一根蔥 input 是 built-in function, 最好不要把你的變數取這個名字 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.161.94.175

02/02 18:51, , 1F
買一送一還送蔥 真是賺到了XDD
02/02 18:51, 1F

02/02 22:12, , 2F
阿喔 剛沒看到這篇 上篇多推了
02/02 22:12, 2F

02/02 22:13, , 3F
感謝各位大師!
02/02 22:13, 3F

02/06 23:09, , 4F
02/06 23:09, 4F
文章代碼(AID): #1IxXbHF5 (Python)
文章代碼(AID): #1IxXbHF5 (Python)