List에서 중복된 데이터가 있을 때, 중복된 값을 모두 제거하는 방법을 소개합니다.
예를 들어, original_list
에서 중복된 값 22와 10을 제거하여, result_list
에는 어떤 데이터도 두개 이상이 들어있지 않도록 만들 수 있습니다.
original_list = [10, 22, 19, 22, 1, 10, 5]
result_list = [10, 22, 19, 1, 5]
다음과 같은 방법으로 구현할 수 있습니다.
- set()를 이용한 방법
- for loop를 이용한 방법
- list comprehension을 이용한 방법
set()를 이용한 방법
set()
는 중복된 값을 허용하지 않습니다. 따라서 list를 set로 변경하면 중복된 값이 제거되며, 그 뒤에 다시 list로 변경하면 중복된 값이 제거된 리스트가 됩니다.
my_list = [10, 22, 19, 22, 1, 10, 5]
result = list(set(my_list))
print(result)
Output:
[1, 5, 10, 19, 22]
for loop를 이용한 방법
for loop를 이용하여 직접 중복된 값을 필터링하여 제거할 수 있습니다.
my_list = [10, 22, 19, 22, 1, 10, 5]
result = []
for i in my_list:
if i not in result:
result.append(i)
print(result)
Output:
[10, 22, 19, 1, 5]
list comprehension을 이용한 방법
다음과 같이 list comprehension으로 구현할 수도 있습니다. for loop로 구현한 것과 거의 유사합니다.
my_list = [10, 22, 19, 22, 1, 10, 5]
result = []
[result.append(x) for x in my_list if x not in result]
print(result)
Output:
[10, 22, 19, 1, 5]
Recommended Posts:
- Python - dict 정렬 (Key, Value로 sorting)
- Python - String을 bytes로 변경하는 방법
- Python - bytes를 String으로 변환하는 방법
- Python - 리스트에서 첫번째, 마지막 요소 가져오는 방법
- Python - 문자열에서 특정 단어 추출
- Python - float을 int로 변경하는 방법
- Python - 특정 문자열로 시작하는 문자열 찾기
- Python - dictionary의 중복 제거 방법
- Python - 리스트가 비어있는지 확인
- Python - 문자열 뒤집기, 문자열 거꾸로 출력
- Python - 현재 날짜, 시간 가져오는 방법
- Python - 두개의 리스트 하나로 합치기
- Python - 리스트 크기(size) 구하기