Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 문자열을 집합(set)으로 변환하는 방법

파이썬 문자열을 집합으로 변환하기

파이썬 표준 라이브러리에는 반복 가능한(iterable) 객체를 집합(set)으로 변환해 주는 내장 함수 set()이 포함되어 있습니다.

집합 객체는 중복된 요소를 포함하지 않는다는 특징이 있습니다. 따라서 문자열에 동일한 문자가 여러 번 등장하더라도, 해당 문자는 집합 객체 안에서 단 한 번만 나타납니다.

기본 사용 예제

>>> set("hello")
{'l', 'h', 'o', 'e'}

위 예제를 보면 문자열 "hello"에는 'l'이 두 번 포함되어 있지만, 결과 집합에는 'l'이 한 번만 존재하는 것을 확인할 수 있습니다.

집합의 순서에 대한 주의점

또 한 가지 기억할 점은, set() 함수가 자체적인 해싱(hash) 메커니즘을 사용하기 때문에 집합에 저장된 문자들이 원본 문자열과 동일한 순서로 배치되지 않을 수 있다는 것입니다. 위 출력 결과에서도 원래 문자열의 순서인 'h', 'e', 'l', 'l', 'o'와 달리 {'l', 'h', 'o', 'e'} 형태로 출력됩니다.

문자열을 집합으로 변환하는 활용 사례

  • 중복 제거: 문자열에서 고유한 문자만 추출하고 싶을 때 유용합니다.
  • 문자 포함 여부 확인: in 연산자와 함께 사용하면 특정 문자의 존재 여부를 빠르게 검사할 수 있습니다.
  • 고유 문자 개수 세기: len(set(문자열))을 통해 문자열에 서로 다른 문자가 몇 개 있는지 손쉽게 알 수 있습니다.
>>> text = "programming"
>>> len(set(text))
9

이처럼 파이썬에서는 set() 함수 하나만으로 문자열을 간단하게 집합으로 변환할 수 있으며, 중복 제거나 고유 요소 분석 등 다양한 작업에 활용할 수 있습니다.