파이썬 문자열 알파벳순 정렬하기
파이썬에서 문자열에 포함된 문자들을 알파벳순으로 정렬하려면 sorted() 함수를 사용하는 것이 가장 간단한 방법입니다. sorted() 함수는 문자열을 받아 정렬된 문자들의 리스트를 반환하며, 이 리스트를 join() 메서드로 다시 합치면 정렬된 문자열을 얻을 수 있습니다.
다음 예제를 살펴보겠습니다.
>>> s = "helloworld" >>> ''.join(sorted(s)) 'dehllloorw'
위 코드에서는 sorted(s)가 문자열 s의 각 문자를 개별 요소로 하는 정렬된 리스트를 반환하고, 빈 문자열 구분자와 함께 ''.join()을 호출하여 리스트의 문자들이 공백 없이 하나의 문자열로 연결됩니다.
중복 문자 제거 후 정렬하기
만약 중복된 문자를 제거하고 고유한(unique) 문자들만 알파벳순으로 정렬하고 싶다면, 집합(set)을 활용할 수 있습니다. 문자열을 set()으로 변환하면 자동으로 중복이 제거되며, 이후 동일하게 정렬하고 합치면 됩니다.
>>> s = "helloworld" >>> ''.join(sorted(set(s))) 'dehlorw'
원본 문자열 "helloworld"에는 'l'과 'o'가 각각 여러 번 등장하지만, 위 결과에서는 각 문자가 한 번씩만 포함되어 'dehlorw'라는 결과가 출력됩니다.
정리
- 모든 문자 정렬:
''.join(sorted(문자열)) - 고유 문자만 정렬:
''.join(sorted(set(문자열)))
두 방법 모두 파이썬의 내장 함수만 사용하기 때문에 별도의 모듈 설치 없이 바로 활용할 수 있으며, 대소문자가 섞인 문자열의 경우 유니코드 순서로 정렬된다는 점도 참고하시기 바랍니다.