18. Python의 리스트(List)에 자료 추가하는 방법을 알아보아요.

안녕하세요. 언휴예요.

이전 강의에서 리스트를 간략하게 소개하였었죠. 튜플이 원소를 변경할 수 없는 한계를 리스트에서는 변경할 수 있다는 것을 살펴보았어요.

이번 강의에서는 리스트에 원소 항목을 추가하는 방법들을 알아볼게요.

Python의 리스트에는 순차보관(append), 원하는 위치에 보관(insert), 다른 리스트의 원소 항목들을 추가(extend)할 수 있어요.

  • append 함수(멤버메서드)를이용하여순차보관

리스트의 함수(멤버 메서드)를 이용하면 맨 뒤에 보관합니다. 따라서 모든 원소 항목을 append 함수를 이용하여 추가하며 순차적으로 보관할 수 있어요.

다음은 비어있는 리스트를 생성한 후에 1에서 30까지 3씩 증가하면서 리스트에 순차 보관하는 예제 코드입니다.

#append 함수(멤버 메서드)를 이용하여 순차 보관
list1 = list() #비어있는 리스트 만들기
for i in range(1,30,3):
    list1.append(i)
print(list1)
[그림 1] 리스트에 순차 보관 - append 함수(멤버 메서드 이용)
[그림 1] 리스트에 순차 보관 – append 함수(멤버 메서드 이용)
  • insert 함수(멤버 메서드)를 이용하여 원하는 위치에 보관

Python의 리스트에는 insert 멤버 메서드를 제공하고 있습니다. insert 멤버 메서드에는 추가할 위치(0부터 시작)와 추가할 값을 인자로 전달합니다. 이와 같이 하면 추가할 위치에 있었던 원소 항목부터 한 칸씩 뒤로 이동하고 해당 위치에 인자로 전달받은 값을 보관합니다.

다음 예제는 1, 2, 3, 4 를 초기 보관하는 리스트를 생성한 후에 insert 멤버 메서드에 인덱스 2와 보관할 값 5를 전달하여 호출한 후에 원소 항목을 출력하는 예제 코드입니다. 인덱스 2에 있는 원소 항목부터(3,4) 한 칸씩 뒤로 이동한 후에 인덱스 2에 5를 보관합니다. 따라서 1, 2, 5, 3, 4 순서로 출력하겠죠.

#insert 함수(멤버 메서드) 이용하여 원하는 위치에 보관

list1 = [1,2,3,4]
list1.insert(2,5)
print(list1)
[그림 2] 리스트 원하는 위치에 보관 - insert 함수(멤버 메서드 이용)
[그림 2] 리스트 원하는 위치에 보관 – insert 함수(멤버 메서드 이용)
  • extend 함수(멤버 메서드)를 이용하여 다른 리스트의 원소 항목 추가하기

Python의 리스트에는 다른 리스트에 보관한 원소 항목들을 자신의 원소 항목으로 추가하는 extend 멤버 메서드를 제공하고 있어요.

다음 예제는 1, 2, 3을 원소로 갖는 list1과 ‘a’, ‘b’, ‘c’를 원소로 갖는 list2를 선언한 후에 list1.extend(list2)를 호출하여 list1에 list2의 원소 항목들을 자신의 원소 항목으로 추가하는 코드입니다. list1을 출력해 보면 1, 2, 3, ‘a’, ‘b’, ‘c’ 순으로 출력하는 것을 확인할 수 있어요.

#extend 함수(멤버 메서드) 이용하여 확장하기
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
list1.extend(list2)
print(list1)
[그림 3] extend 함수(멤버 메서드) 이용하여 확장하기
[그림 3] extend 함수(멤버 메서드) 이용하여 확장하기