Re: 有關Delete一個List裡面的偶數~
※ 引述《deryann (星辰)》之銘言:
: lstNumber = [1,2,3,4,4,4,5,6,7,7,8]
: 大家會直接在lstNumber上面倒過來運作..
: 把不是偶數的delete掉..
: 還事先作一個Buffer把不是偶數的新增進去..
: 各有什麼優缺點呢?
如果 python 底層是用連續的空間來存放 list 的話(這我不確定)
自己 scan list 然後把偶數 remove 掉,可能效能會比較差一點,
因為要把後面的元素一個個往前搬。
而做一個暫存 list 把奇數一個個新增進去則是需要額外的空間,
所以真要細究的話,可能是時間與空間之爭。
但是如果資料量跟上頭的例子差不多的話,
我覺得寫起來高興就好,不用太在意這丁點差別。
我會這麼寫:
[x for x in lstNumber if x & 1 == 1]
或是:
filter( lambda x: x & 1 == 1, lstNumber )
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.3.211
※ 編輯: zhouer 來自: 59.121.3.211 (11/01 02:37)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章