Show remove() 메서드 사용하기¶파이썬 리스트에서 특정 값을 갖는 요소를 삭제하는 가장 간단한 방법은 remove() 메서드를 이용하는 것입니다. 예제1¶lst = [4, 3, 2, 1] lst.remove(3) print(lst) list.remove(value)의 형태로 값을 입력해주면 리스트에서 값을 갖는 요소를 삭제합니다. 똑같은 값이 두 개 있다면 첫번째 요소만 삭제합니다. 그리고 한 번에 하나의 값만 입력할 수 있습니다. 예제2¶lst = [4, 3, 2, 3, 1] for item in lst: if item == 3: lst.remove(3) print(lst) 똑같은 값이 여러 개 있을 때에는 위와 같이 반복문을 사용해서 삭제할 수 있습니다. 리스트 컴프리헨션 이용하기¶예제¶lst = [4, 3, 2, 3, 1] lst = [item for item in lst if item != 3 and item != 1] print(lst) 리스트 컴프리헨션과 조건식을 이용해서 1과 3에 해당하는 요소를 모두 삭제했습니다. NumPy delete() 사용하기 - by Index¶NumPy 어레이에 대해 np.delete()를 사용하면 인덱스를 이용해서 특정 요소를 삭제할 수 있습니다. 예제¶import numpy as np arr = np.array([4, 3, 2, 1]) new_arr = np.delete(arr, [1, 3]) print(new1) np.delete(arr, [indices])의 형태로 삭제할 요소의 인덱스들을 리스트의 형태로 입력합니다. 어레이에서 두번째, 네번째 요소가 삭제되었습니다. NumPy delete() 사용하기 - by Value¶예제¶import numpy as np arr = np.array([4, 3, 2, 3, 1]) new_arr = np.delete(arr, np.where((arr == 3) | (arr == 1))) print(new_arr) np.where((arr == 3) | (arr == 1))는 어레이 arr의 요소가 3 또는 1인 요소의 인덱스들입니다. new_arr는 3과 1에 해당하는 요소가 모두 삭제된 어레이입니다. 이전글/다음글
list[idx::n] n : list를 몇개로 나눌 것인지 idx : 나눈 후에 원하는 인덱스 (idx < n) 맨 위에 예시들을 보면 쉬우니 예시를 보고 참고하면 좋겠다! 코드를 수정하던 중 짝수와 홀수에 해당하는 인덱스만 뽑아야했다. for문을 적용하는 방법 말고 다른 방법을 찾아보다가 위와 같이 인덱싱하는 방법을 찾을 수 있었다. 짝수, 홀수 말고도 list를 n만큼 나누어서 원하는 위치를 고를 수 있다. 파이썬 코드를 깔끔히 짜는데에 유용할 것 같다. 리스트 요소 제거리스트에서 요소를 제거하는 방법으로는 2가지가 있다. remove()와 del이다. 먼저 remove()는 리스트에서 제거하고 싶은 요소의 값을 알고 있을 때 사용하고, del은 리스트에서 제거하고 싶은 요소의 위치를 알고 있을 때 사용한다. 예) 먼저 del을 사용한 모습이다. del list1[2]로 인덱스 2에 위치한 요소를 지울 수 있다. 인덱스는 0부터 시작하므로 3번째 요소인 'c'가 지워진 모습을 확인할 수 있다. del을 이용해 특정 구간에 있는 요소들을 삭제하려면 슬라이싱을 이용하면 된다. del list1[2:4]로 리스트 1에 저장된 요소들의 인덱스 2부터 4까지를 제거할 수 있다. 다음은 remove()에 대한 설명이다. remove()를 이용해 특정 요소를 삭제하려면 인자 값으로 삭제하고 싶은 요소의 값을 넣어주면 된다. |