Recent Posts
Recent Comments
Archives
반응형
250x250
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Today
Yesterday

Total
05-17 04:32
관리 메뉴

Hey Tech

[파이썬] 리스트 내 1개 이상의 특정 값 삭제하는 방법! 본문

SW 개발/Python

[파이썬] 리스트 내 1개 이상의 특정 값 삭제하는 방법!

Tony Park 2021. 4. 17. 10:52
728x90
반응형

안녕하세요, 오늘은 파이썬에서 리스트 내 1개 이상의 특정 원소를 찾아 삭제하는 방법에 대해 공유해 드립니다.

삭제할 원소가 1개냐 2개 이상이냐에 따라 코드 작성 방법이 다르므로 각각 나누어 설명드리도록 하겠습니다.

원소 1개 삭제 방법

1개의 원소를 삭제하는 방법은 간단히 remove() 함수를 사용하면 됩니다.

# 기본 리스트
arr = [5, 7, 1, 1, 2, 6, 1, 6, 7]
print(arr) # [5, 7, 1, 1, 2, 6, 1, 6, 7]

# 원소 1을 1개 삭제
arr.remove(1)
print(arr) # [5, 7, 1, 2, 6, 1, 6, 7]

 

위와 같이 리스트에서 1에 해당하는 원소 1개만이 삭제된 것을 확인할 수 있습니다.

2개 이상의 원소 모두 삭제 방법

다음으로 2개 이상의 원소를 모두 삭제하는 방법입니다.

# 기본 리스트
arr = [5, 7, 1, 1, 2, 6, 1, 6, 7]
print(arr) # [5, 7, 1, 1, 2, 6, 1, 6, 7]

# 삭제할 원소 집합 생성
rm_set = {1, 6}
# 리스트 컴프리헨션 활용: 삭제할 원소 집합 데이터와 일일이 비교
arr_new = [i for i in arr if i not in rm_set]
print(arr_new) # [5, 7, 2, 7]

위 소스코드와 같이 삭제할 원소들을 하나의 집합 데이터 타입에 저장하였습니다. 그리고 리스트 컴프리헨션(list comprehension)을 활용해 반복문과 조건문을 만족하는 새로운 리스트를 생성하였습니다. 결과적으로 삭제하려 했던 원소 1과 6은 리스트에서 모두 제거된 것을 확인하실 수 있습니다.


포스팅 내용에 오류가 있을 경우 댓글 남겨주시면 감사드리겠습니다.

그럼 오늘도 행복한 하루 보내시길 바랍니다 :D

고맙습니다!

 

Last Updated @20210105

- 닉네임 '실수' 님께서 예제 코드 내 오타를 피드백해 주셔서 수정하였습니다. 감사합니다👍

728x90
반응형
Comments