티스토리 뷰
Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.
Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.
아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.
Get difference between two lists
두 리스트 간의 차이 가져오기
문제 내용
I have two lists in Python:
나는 파이썬에 두 개의 리스트가 있습니다:
temp1 = ['One', 'Two', 'Three', 'Four']
temp2 = ['One', 'Two']
I want to create a third list with items from the first list which aren't in the second list:
두 번째 리스트에 없는 첫 번째 리스트의 항목으로 세 번째 리스트를 만듭니다.
temp3 = ['Three', 'Four']
Are there any fast ways without cycles and checking?
빠른 방법(순환하며 체크하는 방법X)이 있나요?
높은 점수를 받은 Solution
To get elements which are in temp1
but not in temp2
:
temp1에 있지만 temp2에 없는 아이템들을 가져오려면:
In [5]: list(set(temp1) - set(temp2))
Out[5]: ['Four', 'Three']
Beware that it is asymmetric :
비대칭임을 주의하십시오.
In [5]: set([1, 2]) - set([2, 3])
Out[5]: set([1])
where you might expect/want it to equal set([1, 3])
. If you do want set([1, 3])
as your answer, you can use set([1, 2]).symmetric_difference(set([2, 3]))
.
set([1, 3])과 같을 것으로 예상/원할 수 있습니다. 답으로 set([1, 3])을 원하는 경우 set([1, 2]).symmetric_difference(set([2, 3]))를 사용할 수 있습니다.
가장 최근 달린 Solution
Here is a modified version of @SuperNova's answer
다음은 @SuperNova의 답변을 수정한 버전입니다.
def get_diff(a: list, b: list) -> list:
return list(set(a) ^ set(b))
출처 : https://stackoverflow.com/questions/3462143/get-difference-between-two-lists
'개발 > 파이썬' 카테고리의 다른 글
'ValueError: numpy.ndarray size changed, may indicate binary incompatibility' 에러 수정하기 (0) | 2022.12.14 |
---|---|
파일의 줄 내용 검색하여 바꾸기 (0) | 2022.12.14 |
리스트 del, remove 및 pop의 차이 (0) | 2022.12.13 |
파이썬에서 휠(wheel) 설치 오류 수정하기 (0) | 2022.12.13 |
리스트에 값이 있는지 확인하는 가장 빠른 방법 (0) | 2022.12.13 |