코딩하는 해맑은 거북이

[Python] 리스트 순서고려 여부에 따른 중복 제거 방법 본문

Python/기본

[Python] 리스트 순서고려 여부에 따른 중복 제거 방법

#CJE 2023. 2. 2.
해당 글은 아래의 3가지를 다룬다.
1. set() 함수 - 순서고려X
2. dict.fromkeys() 함수 - 순서고려O
3. reduce() 함수 - 순서고려O

 

1. set() 함수

리스트 순서 고려하지 않고 중복을 제거하는 방법

arr = [5, 4, 3, 2, 1, 2, 4, 5, 6]
result = list(set(arr))
print(result)

    [3, 1, 5, 4, 6, 2]

 

 

2. dict.fromkeys() 함수

리스트 순서 고려하면서 중복을 제거하는 방법1

arr = [5, 4, 3, 2, 1, 2, 4, 5, 6]
result = list(dict.fromkeys(arr))
print(result)

    [5, 4, 3, 2, 1, 6]

 

3. reduce() 함수

리스트 순서 고려하면서 중복을 제거하는 방법2

from functools import reduce

arr = [5, 4, 3, 2, 1, 2, 4, 5, 6]
result = reduce(lambda a, b: a if b in a else a+[b], arr, [])
print(result)

    [5, 4, 3, 2, 1, 6]

 

Comments