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

Python에서 집합(Set)을 리스트(List)로 변환하는 방법

Python을 활용한 데이터 분석 작업 중에는 데이터 컨테이너를 집합(set)에서 리스트(list)로 변환해야 하는 경우가 자주 발생합니다. 이 글에서는 이러한 요구 사항을 해결할 수 있는 대표적인 두 가지 방법을 예제와 함께 살펴보겠습니다.

1. list() 함수 사용하기

가장 간단하고 직관적인 방법은 주어진 집합에 list() 함수를 직접 적용하는 것입니다. 집합의 요소들이 그대로 리스트의 요소로 변환되며, 별도의 추가 처리 없이 한 줄로 변환이 완료됩니다.

예제

setA = {'Mon', 'day', '7pm'}
# 주어진 집합
print("Given set : \n", setA)
res = (list(setA))
# 결과
print("Final list: \n", res)

출력 결과

위 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

Given set :
['7pm', 'Mon', 'day']
Final list:
['7pm', 'Mon', 'day']

2. * 연산자(언패킹) 사용하기

별표(*) 연산자는 집합에 담긴 모든 요소를 하나씩 언패킹하여 꺼내는 역할을 합니다. 이를 대괄호([]) 안에 넣으면 언패킹된 요소들로 구성된 새로운 리스트가 생성됩니다.

예제

setA = {'Mon', 'day', '7pm'}
# 주어진 집합
print("Given set : \n", setA)
res = [*setA]
# 결과
print("Final list: \n", res)

출력 결과

위 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

Given set :
{'Mon', '7pm', 'day'}
Final list:
['Mon', '7pm', 'day']

마무리 및 참고 사항

두 방법 모두 동일한 결과를 제공하며 성능 차이도 미미합니다. 다만 집합은 순서가 없는(unordered) 자료구조이기 때문에, 변환된 리스트의 요소 순서는 실행 환경이나 실행 시점에 따라 달라질 수 있다는 점에 유의해야 합니다. 요소의 순서가 중요하다면 변환 후 sorted() 함수를 사용해 정렬하는 것이 좋습니다. 일반적으로는 의도가 명확하게 드러나는 list() 함수를 사용하는 방식이 코드 가독성 측면에서 더 권장됩니다.