달나라 노트

Python Basic : list clear, remove, pop, del (list속 요소 삭제하기) 본문

Python/Python Basic

Python Basic : list clear, remove, pop, del (list속 요소 삭제하기)

CosmosProject 2021. 3. 29. 03:35
728x90
반응형

 

 

 

Python list의 요소를 삭제할 수 있는 기능을 제공하는 method는 크게 4가지가 있습니다.

각 method의 특징은 다음과 같습니다.

 

Method Description
clear() list속 모든 요소를 삭제하여 비어있는 list로 변환시킴 (원본 list에서 삭제됨)
remove(value) list속에서 value와 동일한 값을 삭제 (원본 list에서 삭제됨)
pop(index) list속에서 명시된 index의 요소를 삭제 (원본 list에서 삭제됨)
del list[index] list속에서 명시된 index의 요소를 삭제 (원본 list에서 삭제됨)

 

 

 

 

 

 

예시를 보면서 한번 알아봅시다.

 

list_test = [5, 3, 1, 4, 2, 'a', 'bc', 'def']

list_test.clear()
print(list_test)



-- Result
[]

clear는 위처럼 list 속 모든 요소를 제거하여 비어있는 list로 만듭니다.

 

 

 

 

list_test = [5, 3, 1, 4, 2, 'a', 'bc', 'def']

list_test.remove(5) # 1
print(list_test)

list_test.remove('bc') # 2
print(list_test)

# list_test.remove('z') # list에 없는 값이어서 error 발생



-- Result
[3, 1, 4, 2, 'a', 'bc', 'def']
[3, 1, 4, 2, 'a', 'def']

remove는 list에서 명시된 값을 제거합니다.

1. list_test에서 5라는 값을 제거

 

2. list_test에서 bc라는 값을 제거.

여기서 보면 1번에서 이미 원본 list 속 5를 제거하였기 때문에 두 번째 remove의 결과에서도 5는 없습니다.

 

 

 

 

 

list_test = [5, 3, 1, 4, 2, 'a', 'bc', 'def']

list_test.pop(0) # 1
print(list_test)

list_test.pop(3) # 2
print(list_test)



-- Result
[3, 1, 4, 2, 'a', 'bc', 'def']
[3, 1, 4, 'a', 'bc', 'def']

1. list_test에서 index=0인 값(여기서는 5)을 제거

 

2. 1번의 결과에서 index=3인 값(여기서는 2)을 제거

 

마찬가지로 pop은 원본 list 자체에 변형을 가하기 때문에 두 번째 pop의 결과에서 5는 없습니다.

 

 

 

 

list_test = [5, 3, 1, 4, 2, 'a', 'bc', 'def']

del list_test[3]
print(list_test)



-- Result
[5, 3, 1, 2, 'a', 'bc', 'def']

del은 pop과 거의 비슷하지만 syntax의 형식만 다릅니다.

 

 

 

 

 

728x90
반응형
Comments