반응형
파이썬 리스트 중복값 제거, 중복값 없애기를 할 수 있는, 중복을 허용하지 않는 특성의 set함수에 대한 포스팅 입니다.
1. SET 함수 정의 = 집합 자료형
set( ) 함수나 중괄호{ }를 이용해서 선언할 수 있습니다. 중괄호는 key - value 짝을 이루고 있으면 dictionary 타입이 되지만 value만 있으면 set타입이 되요.
순서는 무시되기 때문에 위치 인덱싱을 활용하려면 set 타입은 활용이 불가하고 리스트로 변환하셔야 됩니다.
# {}를 활용한 SET 선언
>>> s1 = {3, 1, 2, 4}
>>> print(type(s1), s1)
<class 'set'> {1, 2, 3, 4}
# set()을 활용한 SET 선언
>>> s2 = set(s1)
>>> print(type(s2), s2)
<class 'set'> {1, 2, 3, 4}
2. 리스트를 set() 으로 변환
set( ) 함수를 이용해서 리스트를 set자료형으로 변환할 수 있으며, 이때 중복된 값은 삭제됩니다.
# list를 set으로
>>> list1 = [3, 1, 2, 4]
>>> s3 = set(list1)
>>> print(type(s3), s3)
<class 'set'> {1, 2, 3, 4}
# 중복값이 있다면 지워짐
>>> s4 = set([3, 1, 1, 2, 2, 4])
>>> print(type(s4), s4)
<class 'set'> {1, 2, 3, 4}
# 중복값이 지워진 set을 다시 list로 변환
>>> s4 = set([3, 1, 1, 2, 2, 4])
>>> s4 = list(s4)
>>> print(type(s4), s4)
<class 'list'> [1, 2, 3, 4]
단, 한번 set으로 변환하면 원소 순서와 상관없이 출력됩니다.
리스트 중복값 제거에 대하여 간단하게 알아보았습니다. 즐거운 코딩 하세요.
최근댓글