python에서 리스트는 여러모로 많이 쓰입니다.

보통 리스트에 저장된 모든 값들을 출력을 많이 하는데 중복된 값이 있다면 필요가 없겠죠.


이때 set함수를 사용합니다.

set함수는 집합과 관련된 함수로 중복제거에 사용 시 아래와 같이 사용하면 됩니다.


list1 = ['1', '3', '5', '2', '4', '1', '5']


print list(set(list1))


<결과>


하지만 set함수는 위에서 보시는 것처럼 '순서와 상관없이' 중복만 제거 합니다.


만약 순서를 유지하면서 출력을 하고 싶다면 아래 코드를 이용하시면 됩니다.


from collections import OrderedDict


list2 = ['1', '2', '3', '4', '5', '3', '5']

print list(OrderedDict.fromkeys(list2))


OrderedDict 라이브러리를 사용하여 원본 리스트가 가진 값을 순서대로 정렬 및 중복 제거를 수행합니다.


<결과>

아마 이런 식의 출력을 원하시는 분들이 더 많을 것 같습니다.


다른 언어로는 여러 줄의 코드가 필요하겠지만 파이썬으로는 한 줄이면 가능하다는 점이 많은 분들이 파이썬을 사용하는 이유가 아닐까 싶습니다.


=)

저작자 표시 비영리 변경 금지
신고

+ Recent posts

티스토리 툴바