리스트를 이용하여 데이터를 관리하다 보면 중복 데이터가 발생하는 경우가 있다.
중복 데이터 제거가 필요한 경우를 위하여 방법 기록.
1. for문을 이용한 중복 제거 (순서 유지)
반복문을 이용하여 새로운 리스트에 값을 append. 이 과정에서 새로운 리스트에 값이 있으면 skip.
old_list = [1, 2, 3, 1, 3, 4, 5, 6, 7]
new_list = []
for ii in old_list:
if ii not in new_list:
new_list.append(ii)
return new_list
# new_list == [1, 2, 3, 4, 5, 6, 7]
2. set을 이용한 중복 제거 (순서 유지 안됨)
중복데이터를 허용하지 않는 set 자료형을 이용하여 형변환을 이용한 중복 제거. 이 과정에서 순서는 보장 X
old_list = [1, 2, 3, 1, 3, 4, 5, 6, 7]
temp_set = set(old_list)
new_list = list(temp_set)
return new_list
# new_list == [1, 2, 3, 4, 5, 6, 7]
# 단, 순서는 원 데이터에 따라 달라질 수 있음.
'Programming > Python' 카테고리의 다른 글
Call by Value? Call by Reference?? (0) | 2021.03.10 |
---|---|
python2.X 에서 opencv-python을 설치하자 (0) | 2021.01.19 |
os에 따른 기본 파일 인코딩 형식 (0) | 2020.12.14 |
데이터와 인덱스를 알려주는 enumerate (0) | 2020.12.01 |
CondaVerificationError를 해결하자 (0) | 2020.10.28 |