Python

[Python] 파이썬 리스트(list) 값 삭제하는 방법 총정리: remove(), del(), clear(), pop()

파이썬에서 리스트(list) 자료형의 값을 삭제하는 방법에 대해 알아봅니다. 총 4개의 함수를 사용하여 삭제가 가능합니다. 다. 단순 반복 삭제를 하지않는 다면 remove()함수를 사용하면 편리하며, 값의 범위를 지정하여 삭제해야한다면 del()함수의 사용을 추천합니다.

remove() 함수

삭제하고자 하는 값 중에 첫번째로 찾은 값 하나만 삭제합니다.

list = ["Hello", "Python", "Nice", "Have", "a", "Hello"]
print(list)

print('-'*30)
list.remove("Hello")
print(list)
print('-'*30)
list.remove("Hello")
print(list)


#실행결과
['Hello', 'Python', 'Nice', 'Have', 'a', 'Hello']
------------------------------
['Python', 'Nice', 'Have', 'a', 'Hello']
------------------------------
['Python', 'Nice', 'Have', 'a']

Process finished with exit code 0

 

clear()함수

리스트의 모든 값을 삭제합니다.

list = list(range(15))
print(list)

print('-'*30)
list.clear()
print(list)



#실행결과
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
------------------------------
[]

Process finished with exit code 0

 

del()함수

인덱스값을 지정하여 삭제합니다. 인덱스 값은 0부터 시작됩니다. 마지막 값을 삭제하고 싶은 경우 -1값을 설정합니다.

-2값을 설정하면 마지막 값에서 두 번째의 값이 삭제됩니다.

list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
print(list)

print('-'*30)
del list[0]
print(list)
print('-'*30)
del list[-1]
print(list)
print('-'*30)
del list[2]
print(list)
del list[-2]
print('-'*30)
print(list)


#실행결과
['Hello', 'Python', 'Nice', 'Have', 'a', 'Hello', 'Who are you']
------------------------------
['Python', 'Nice', 'Have', 'a', 'Hello', 'Who are you']
------------------------------
['Python', 'Nice', 'Have', 'a', 'Hello']
------------------------------
['Python', 'Nice', 'a', 'Hello']
------------------------------
['Python', 'Nice', 'Hello']

Process finished with exit code 0

한번에 여러개의 값을 삭제하고 싶은 경우 범위를 지정하여 삭제합니다.

0:2는 index값이 0부터 2까지의 값을 삭제합니다.

:6 은 index값이 0부터 6까지의 값을 삭제합니다.

4: 은 index값이 4부터 마지막 값까지 삭제합니다.

-2: 은 index값이 뒤에서부터 시작됩니다. 뒤에서 두번째부터 시작되는 모든 값을 삭제합니다.

import random
list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
print(list)

print('-'*30)
del list[0:2]
print(list)
print('-'*30)
list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
del list[:6]
print(list)
print('-'*30)
list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
del list[4:]
print(list)
list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
del list[-2:]
print('-'*30)
print(list)



#실행결과
['Hello', 'Python', 'Nice', 'Have', 'a', 'Hello', 'Who are you']
------------------------------
['Nice', 'Have', 'a', 'Hello', 'Who are you']
------------------------------
['Who are you']
------------------------------
['Hello', 'Python', 'Nice', 'Have']
------------------------------
['Hello', 'Python', 'Nice', 'Have', 'a']

pop()함수

del()함수와 유사합니다. 인덱스값을 생략하는 경우 마지막 값을 삭제합니다. 인덱스가 존재하지않는 값을 지정하게 되면IndexError pop index out of range오류가 발생합니다.

list = ["Hello", "Python", "Nice", "Have", "a", "Hello", "Who are you"]
print(list)
print('-'*30)
print(f'삭제대상이 되는 값 : ', {list.pop()})
print(f'삭제 후 결과: {list}')
print('-'*30)
print(f'삭제대상이 되는 값 : ', {list.pop(3)})
print(f'삭제 후 결과: {list}')
print('-'*30)
print(f'삭제대상이 되는 값 : {list.pop(-1)}')
print(f'삭제 후 결과: {list}')
list.pop(33)


#실행결과
C:UsersilikeAppDataLocalProgramsPythonPython39python.exe C:/python/Workspace/main.py
Traceback (most recent call last):
  File "C:pythonWorkspacemain.py", line 13, in <module>
    list.pop(33)
IndexError: pop index out of range




['Hello', 'Python', 'Nice', 'Have', 'a', 'Hello', 'Who are you']
------------------------------
삭제대상이 되는 값 :  {'Who are you'}
삭제 후 결과: ['Hello', 'Python', 'Nice', 'Have', 'a', 'Hello']
------------------------------
삭제대상이 되는 값 :  {'Have'}
삭제 후 결과: ['Hello', 'Python', 'Nice', 'a', 'Hello']
------------------------------
삭제대상이 되는 값 : Hello
삭제 후 결과: ['Hello', 'Python', 'Nice', 'a']

Process finished with exit code 1

 

[REFERENCE]

docs.python.org/3/tutorial/datastructures.html

파이썬 자습서

Python 3.9.1rc1 문서

blog.myungseokang.dev/posts/python-basic-grammar1/

 

 

[파이썬 더 알아보기]

[Python] 파이썬 list, tuple, dictionary,set 예제 및 총정리

 

[Python] 파이썬 list, tuple, dictionary,set 예제 및 총정리

■리스트 타입의 자료형(List) 파이썬에서 리스트는 배열이라고 생각하면 됩니다. a = [] b = [1,2,3,4,5] c = [‘Hello’,’World’] d = [1,2,3, [‘Hello’, ‘World’]] [실행결과] 리스트의 값을 변경하는 방법은 인..

playground.naragara.com

[프로그래밍/Python] – [Python] 파이썬 소수점 반올림, 돈 표기 방법 : 천단위 콤마(쉼표) 찍기( 천단위 구분 기호 추가), 숫자 콤마 제거

[프로그래밍/Python] – [Python] 파이썬 self를 인자로 받는 함수(Method)와 그렇지 않은 함수(메소드)의 차이점

[프로그래밍/Python] – [Python] 파이썬 __name__ == ‘__main__’의 사용 목적

[프로그래밍/Python] – [Python] 파이썬 패키지(Package), 모듈(Module) 개념 및 예제 : 패키지, 모듈을 만들고 불러오기(import)

[프로그래밍/Python] – [Python] 파이썬 난수 발생(random) 예제 총정리 : randit(), randrange(), uniform(), shuffle(), choice(), choices(), simple()

[프로그래밍/Python] – [Python] 파이썬 클래스(class) 와 생성자(__init__) 사용방법 및 예제 총정리

 

Leave a Reply

error: Content is protected !!