본문 바로가기

BLOG/파이썬 기초

[파이썬] remove와 del의 차이는? / 리스트 데이터 삭제하기

 

remove()  del() 함수는 리스트에 있는 데이터를 삭제할 때 사용되는 함수입니다.

remove()는 리스트에 있는 특정 데이터의 항목명으로 삭제할 때 사용하고, del()은 특정 데이터의 항목 번호로 삭제하는 함수인데요, 각 함수의 사용 방법을 살펴보면서 차이를 알아보도록 하겠습니다.

 

1. remove()

remove() 함수는 list.remove('항목명') 로 사용되며, 리스트 안에 있는 데이터의 이름을 알고 있고, 그 데이터를 삭제할 때 사용됩니다. 아래 코드를 보며 설명하도록 하겠습니다.

 

list1 = ['바나나', '오렌지', '사과', '수박' ]
list1.remove('사과')
print(list1)

  

['바나나', '오렌지', '수박']

 

위 코드처럼 '사과' 라는 항목을 지우고 싶을 때 list1.remove('사과') 라고 입력하면 됩니다.

 

한편, '사과'라는 항목이 아래처럼 리스트에 2개 이상 있을 때 remove() 함수는 첫 번째에 해당되는 항목만 지우게 됩니다.

 

list1 = ['바나나', '오렌지', '사과', '수박', '사과' ]
list1.remove('사과')
print(list1)

 

['바나나', '오렌지', '수박', '사과']

 

2. del()

반면 del() 함수는 remove와 다르게 항목 위치로 데이터를 삭제합니다.

del list[항목 위치] 와 같이 사용하면 되는데요, 리스트에서 2번째 데이터를 지우고 싶다면 다음과 같이 코드를 작성하면 됩니다.

 

list2 = ['바나나', '오렌지', '사과', '수박']
del list2[2]
print(list2)

  

['바나나', '오렌지', '수박']

 

del list2[2] 라고 입력하니, 리스트상 2번째 항목이 삭제된 것을 확인할 수 있습니다. (리스트는 0번째 항목부터 시작합니다!)