看板 Python 關於我們 聯絡資訊
※ 引述《sariel0322 (sariel)》之銘言: : 我想要請問一下,如果我有一串數字 : A = [9,5,5,4,7,6,4,1,2,0,10,9,7,....] : 要如何找出這列資料中只出現一次的數字,但不用到for迴圈的方法 def uniq(li): A = li[:] A.sort() B = A[:-1] return [x for x in A if (x, x) not in \ filter(lambda (x,y): x == y, zip(A[1:],B))] -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.167.145.113 ※ 文章網址: http://www.ptt.cc/bbs/Python/M.1400608216.A.513.html ※ 編輯: yauhh (118.167.145.113), 05/21/2014 01:51:02
apua:給了我一個 idea 05/21 02:14
apua:def uniq(L): 05/21 02:15
apua: S = sorted(L) 05/21 02:15
apua: Multi = map(lambda T:T[0], 05/21 02:15
apua: filter(lambda T:T[0]==T[1], zip(S[1:],S[:-1]))) 05/21 02:15
apua: return sorted( set(L) - set(Multi) ) 05/21 02:16
yauhh:最後既然是set,不必sort 05/21 02:22
apua:只是想得到一個漂亮的 list 05/21 14:28