파이썬에서 두 리스트를 변경하지 않고 합치는 방법
개요
프로그래밍 언어 중 하나인 파이썬에서 리스트를 합치는 것은 일반적인 작업입니다. 그러나 이러한 작업을 할 때 원래 리스트에 영향을 미치지 않고 새로운 리스트를 생성하려는 경우가 있습니다. 이 문서에서는 원래 리스트를 변경하지 않고 두 개의 리스트를 합치는 여러 방법을 자세히 설명합니다.
+
연산자를 이용한 방법
+
연산자는 파이썬에서 리스트를 쉽게 합칠 수 있는 가장 기본적인 방법입니다.
1
2
3
list1 = [1, 2, 3]
list2 = [4, 5, 6]
merged_list = list1 + list2
이렇게 하면 merged_list
는 [1, 2, 3, 4, 5, 6]
이 됩니다. 원래의 list1
과 list2
는 변경되지 않습니다.
extend()
메소드를 이용한 복사본 생성
extend()
메소드는 원래 리스트에 다른 리스트를 추가합니다. 이 메소드를 사용하면 원래 리스트가 변경되므로, 복사본을 만들어 extend()
를 사용해야 합니다.
1
2
3
4
list1 = [1, 2, 3]
list2 = [4, 5, 6]
merged_list = list1.copy()
merged_list.extend(list2)
merged_list
는 이제 [1, 2, 3, 4, 5, 6]
이 됩니다.
itertools.chain
함수를 이용한 방법
itertools.chain
은 두 개 이상의 리스트를 연결할 수 있으며, 이터레이터를 반환합니다. 이터레이터는 list()
함수를 통해 리스트로 변환할 수 있습니다.
1
2
3
4
5
from itertools import chain
list1 = [1, 2, 3]
list2 = [4, 5, 6]
merged_list = list(chain(list1, list2))
결론
위에서 설명한 세 가지 방법은 모두 원래 리스트를 변경하지 않고 새로운 리스트를 생성합니다. +
연산자는 가장 직관적이며, extend()
메소드는 복사본을 사용해야 하고, itertools.chain
함수는 이터레이터를 반환하기 때문에 추가로 리스트로 변환해야 합니다. 여러 상황에 따라 적합한 방법을 선택할 수 있습니다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.