[python] 문자열 중복 제거하기

이번 포스트에서는 Python을 사용하여 문자열에서 중복된 문자를 제거하는 방법을 다루어 보겠습니다.

1. 방법 1: 일반적인 방법

Python에서는 set을 이용하여 중복된 문자를 제거할 수 있습니다. 예를 들어 다음과 같이 작성할 수 있습니다.

def remove_duplicates(s):
    return ''.join(set(s))

위의 코드에서는 set을 이용하여 문자열 s의 중복을 제거한 후, join 메서드를 이용하여 다시 문자열로 변환합니다.

2. 방법 2: 순서 유지하기

만약 중복을 제거한 후에도 문자열의 순서를 유지하고 싶다면 다음과 같이 collections 모듈의 OrderedDict를 사용할 수 있습니다.

from collections import OrderedDict

def remove_duplicates_with_order(s):
    return ''.join(OrderedDict.fromkeys(s))

위의 코드에서는 OrderedDict를 사용하여 중복을 제거하고, join 메서드를 이용하여 다시 문자열로 변환합니다. 순서를 유지하기 위해 OrderedDict를 사용하는 것이 중요합니다.

3. 테스트

이제 위에서 작성한 함수들을 테스트해 보겠습니다.

s = "hello"
print(remove_duplicates(s))
print(remove_duplicates_with_order(s))

위의 코드를 실행하면 다음과 같은 결과가 출력됩니다.

hel
helo

위의 결과에서와 같이 각각의 함수를 통해 중복된 문자가 제거된 것을 확인할 수 있습니다.

이상으로 Python을 사용하여 문자열에서 중복된 문자를 제거하는 방법에 대해 알아보았습니다. 감사합니다.

참고 자료: