본문 바로가기
Python/Python_basic

[Python] 중복제거(자료구조 set)

by Mr.DonyStark 2023. 11. 1.

□ set : 집합자료형 중복 허용하지 않음 순서없음
List, Tuple : 순서있음, 중복허용

#아래 리스트에서 중복되는 원소를 제거 후 출력하세요.
x = ["a", 1, "b", "a", 2, 3, "b", 4, 5, "b"]
#방법1
ex1 = set(x)
print(f'ex1 = {ex1}')
#방법2(순서유지)
from collections import OrderedDict        #OrderedDict 라이브러리 호출 및 fromkeys 메서드 활용
ex2 = list(OrderedDict.fromkeys(x))
print(f'ex2 = {ex2}')
#방법3(순서유지)
ex3 = []
for i in x:
    if i not in ex3:
        ex3.append(i)
print(f'ex3 = {ex3}')
#방법4(순서유지)
#[조건 만족시 출력값 for조건① if조건②]
ex4 = []
[ex4.append(a) for a in x if a not in ex4]
print(f'ex4 = {ex4}')