본문 바로가기

Language/Python

[Python] 리스트 요소 추가, 수정하기 - append(), insert()

list_a = [1, 2, 3, 4]

1부터 4까지의 숫자를 저장한 list_a를 만들었어요.

그런데 숫자 5도 추가해주고 싶은데 어떻게 해야할까요?

파이썬은 리스트에 요소를 넣는 방법이 두 가지 있어요.

바로 append 함수와 insert 함수!

 

두 함수는 어떤 차이가 있을까요?

소스코드를 작성해보면서 알아볼게요.

 

append(데이터)로 요소 추가하기

 

# append를 이용해서 list_a에 숫자 5를 넣기
list_a.append(5)
print(list_a)
>> (출력) [1, 2, 3, 4, 5]

 

리스트에서 제공하는 append 함수를 이용하면 숫자 5를 마지막 요소로 추가해줘요.

그럼 insert 함수를 사용해볼까요?

아직 숫자 5가 추가되지 않았다고 생각해주세요.

 

insert(저장할 인덱스 위치, 데이터)로 요소 추가하기

 

# insert를 이용해서 list_a에 숫자 5를 넣기
list_a.insert(4, 5)
print(list_a)
>> (출력) [1, 2, 3, 4, 5]

 

insert 함수는 append와 다르게 어느 위치에 데이터를 넣을지 정할 수 있어요.

첫 번째 파라미터가 바로 데이터를 넣을 인덱스 위치!

index 4번에 숫자 5를 입력해달라고 하는 거에요.

즉, insert 함수는 추가보다는 삽입이라고 할 수 있겠네요.

그럼 첫 번째에 숫자 6을 추가해볼까요?

 

# 0번째 index에 숫자 6 추가하기
list_a.insert(0, 6)
print(list_a)
>> (출력) [6, 1, 2, 3, 4, 5]

 

데이터 수정하기

 

리스트에 데이터를 추가하는 방법을 이해하셨나요?

그럼 이번에는 데이터를 수정해볼게요.

[1, 2, 3, 4, 5, 6]이 저장된 리스트에서 두 번째 숫자(2)를 7로 바꾸고 싶은데 어떻게 해야할까요?

 

list_a = [1, 2, 3, 4, 5, 6]

# 수정하기 전 list_a
print(list_a)
>> (출력) [1, 2, 3, 4, 5, 6]

# 숫자 1을 7로 변경하기
list_a[1] = 7

# 변경 후 list_a
print(list_a)
>> (출력) [1, 7, 3, 4, 5, 6]

 

쉽죠? 변수명[인덱스번호] = 변경할 값 이렇게 작성해주면 데이터가 변경돼요.

리스트를 다룰 때 변수명[인덱스번호] 형태로 작성하는 경우가 많으니 꼭 알고있어야 돼요.