2017-02-23 2 views
-3

listB에있는 listA에있는 모든 어커런스를 삭제해야하는 부분에 코드가 포함되어 있습니다.python 다른 목록을 기반으로 목록에서 요소를 제거합니다.

예 :

A=[1,4,4,4,3,3,2,1,5,5] 
B=[4,3] 

결과 A=[1,2,1,5,5]이어야한다. 이상적으로 나는 선형 시간에 그것을하고 싶을 것이다. Set Operations를 사용

+0

미안, 지금은 내 질문에 약간의 변화를 프로그래머. 내 목록 A가 반복 된 값을 갖기를 원할 것입니다. –

답변

0

List Comprehension를 사용

list(set(A) - set(B)) 

,

In [11]: [i for i in A if i not in B] 
Out[11]: [1, 2, 1, 5, 5] 
+0

죄송합니다. 지금 내 질문에 사소한 변경이 있습니다. 내 목록 A에 반복되는 값을 가지고 싶습니다. –

+0

@SaiPardhu 따라서 적절하게 변경했습니다. –

+1

끝내 주셔서 감사합니다! –

1

: list comprehension로 시도

list(set([i for i in A if i not in B])) 
+0

여전히 중복 요소에 대한 기회가 있습니다. –

+0

죄송합니다. 지금은 제 질문에 약간의 변화가 있습니다. 내 목록 A에 반복 된 값이 있기를 원합니다. –

관련 문제