SeouliteLab

[Python/파이썬] 리스트 중복 제거, 4가지 방법 본문

프로그래밍

[Python/파이썬] 리스트 중복 제거, 4가지 방법

Seoulite Lab 2024. 3. 5. 08:43

리스트에서 중복된 항목을 제거하는 것은 Python 프로그래밍에서 자주 사용되는 작업 중 하나입니다. 이번 글에서는 Python을 사용하여 리스트에서 중복된 항목을 제거하는 네 가지 방법을 살펴보겠습니다.

1. set() 함수를 이용한 방법

set() 함수는 중복된 요소를 제거하고 유일한 값만 포함된 집합(set)을 반환합니다. 이후 리스트로 변환하여 중복이 제거된 리스트를 얻을 수 있습니다.

original_list = [1, 2, 3, 1, 2, 4, 5]
unique_list = list(set(original_list))
print(unique_list)

2. list comprehension을 이용한 방법

list comprehension을 사용하여 중복된 항목을 제거할 수 있습니다. 이 방법은 순서를 유지하지만 원래의 리스트에 대한 변경은 없습니다.

original_list = [1, 2, 3, 1, 2, 4, 5]
unique_list = []
[unique_list.append(x) for x in original_list if x not in unique_list]
print(unique_list)

3. OrderedDict를 이용한 방법

collections 모듈의 OrderedDict를 사용하여 중복된 항목을 제거할 수 있습니다. 이 방법은 순서를 유지하고 원래의 리스트에 대한 변경이 없습니다.

from collections import OrderedDict

original_list = [1, 2, 3, 1, 2, 4, 5]
unique_list = list(OrderedDict.fromkeys(original_list))
print(unique_list)

4. numpy를 이용한 방법

numpy 라이브러리의 unique() 함수를 사용하여 중복된 항목을 제거할 수 있습니다. 이 방법은 순서를 유지하지만 원래의 리스트에 대한 변경이 없습니다.

import numpy as np

original_list = [1, 2, 3, 1, 2, 4, 5]
unique_list = np.unique(original_list)
print(unique_list)