본문 바로가기

파이선

python list 값 중복 제거하기

반응형

 Python 자료구조중 하나인 List 에 중복된 값이 있을 경우, 중복 제거를 하고 싶은 경우가 있다. 물론 직접 해당 기능을 구현할 수 있으나, 간단한 방법이 있다. 바로 python의 자료형 중 set 을 이용한 방법이다. 자료형 set은 크게 두가지 특징을 가지고 있다.

1. 중복을 허용하지 않는다. ( removing duplicated )

2. set 내부에 있는 값(value) 들은 순서가 존재하지 않는다. (unordered)

이러한 set 자료구조의 특징을 이용해 아래와 같이 쉽게 중복을 제거할 수 있다.

ex_list = [ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'c', 'd' ] 

dub_list = list(set(ex_list))

print dub_list

결과는 아래와 같다.
###

['a', 'c', 'b', 'e', 'd', 'g', 'f']

###

 

중복된 값이 있 list를 set 형태로 바꾼 후, 다시 list 형태로 변환한 것이다. 한가지 주의해야 할 점은, 기존 list의 순서 형태를 유지하면서 중복을 제거해야 하는 경우에는 set을 이용한 중복 제거를 사용할 수 없다.

 

 

반응형