22번에서는 리스트의 원하는 부분에 데이터를 삽입하는 insert() 함수에 대해 알아보았다.

2023.08.17 - [BOOK/파이썬 문제풀이 100] - 22. 리스트의 원하는 위치에 데이터를 삽입하기(insert)

 

22. 리스트의 원하는 위치에 데이터를 삽입하기(insert)

21번에서 리스트의 끝에 데이터를 추가하는 append() 함수와 원하는 인덱스의 데이터를 삭제하는 del 명령어를 배웠다. 2023.08.17 - [BOOK/파이썬 문제풀이 100] - 21. 리스트 추가, 삭제하기(append, del) 21.

jijibae.tistory.com


23번에서는 리스트를 합칠 때 사용하는 extend() 함수에 대해 알아보겠다.

 

extend() 란

파이썬에서 iterable한 자료를 끝에 추가하고 싶을 때 extend()함수를 사용한다.

앞에서 배운 append()함수와 끝에 추가하는 것은 같으나, 다른 점은 extend()의 () 안에는 iterable 자료형만 올 수 있다는 것이다. interable 자료형이 아닌 경우 TypeError가 발생한다.

 

함수 형태

리스트1.extend(리스트2)

예)list1.extend(list2)

이때, 주의해야할 것이 이 결과가 곧 리스트1이 된다는 것이다. 즉, 리스트1이 변경되어 확장된다는 것이고,

리스트2는 변함없다.

 

예시1. 리스트 2개를 합치기

#리스트 생성
nums = [1, 2, 3]

#iterable한 자료형을 추가
nums.extend([4,5])

#출력
print(nums)

결과

예시2. append()와 extend()의 차이

nums = [1, 2, 3, 4]

#append()를 사용하여 자료 5를 추가
nums.append(5)

#출력
print(nums)

#extend()를 사용하여 자료 6을 추가
nums.extend([6])

#출력
print(nums)

결과

다음과 같이 자료 1개를 추가할 때는 append()를 사용하는 것이 편리하다.

append()함수가 iterable 자료형의 요소를 각각 추가하는 것은 불가능하니 그럴 때는 extend() 함수를 사용하면 되겠다.