파이썬에서는 리스트(list)와 튜플(tuple)이라는 두 가지 대표적인 시퀀스 자료형을 다룰 때가 많습니다. 그런데 서로 다른 자료형끼리 데이터를 합쳐야 할 때는 어떻게 해야 할까요? 다행히 파이썬에서는 '+' 연산자를 사용하면 리스트에 튜플을 손쉽게 추가할 수 있습니다.
리스트에 튜플 추가하기
아래 예제를 통해 리스트에 튜플을 더하는 방법을 살펴보겠습니다.
예제 코드
my_list = [3, 6, 9, 45, 66]
print("The list is : ")
print(my_list)
my_tup = (11, 14, 21)
print("The tuple is ")
print(my_tup)
my_list += my_tup
print("The list after addition is : " )
print(my_list)실행 결과
The list is : [3, 6, 9, 45, 66] The tuple is (11, 14, 21) The list after addition is : [3, 6, 9, 45, 66, 11, 14, 21]
코드 설명
먼저 정수 값들을 담은 리스트를 정의하고, 콘솔에 출력합니다.
다음으로 세 개의 정수를 담은 튜플을 정의하고 출력합니다.
'+=' 연산자(복합 할당 연산자)를 사용해 튜플의 요소들을 리스트 뒤에 추가합니다. 이는 'my_list = my_list + my_tup'과 동일하게 동작합니다.
튜플의 요소들이 기존 리스트 끝에 이어 붙어진 새로운 상태의 리스트가 콘솔에 출력됩니다.
주의할 점
'+' 연산자로 리스트와 튜플을 합칠 때 결과는 항상 새로운 리스트로 생성됩니다. 즉, 원본 리스트는 변경되지 않고 병합된 결과를 담은 새 객체가 만들어집니다. 따라서 원본 데이터를 유지해야 하는 경우에는 반드시 결과를 새 변수에 저장하는 것이 좋습니다.
merged_list = my_list + my_tup # 원본 유지, 새 리스트 생성
반대로 튜플에 리스트를 추가하고 싶다면, 먼저 리스트를 튜플로 변환한 후 결합해야 합니다. 튜플은 불변(immutable) 자료형이기 때문입니다.
my_tup += tuple(my_list) # 리스트를 튜플로 변환 후 결합
이처럼 '+' 연산자를 활용하면 리스트와 튜플 간의 데이터 결합을 간단하고 직관적으로 처리할 수 있습니다.