python | list에서 remove 사용 시 주의할 점
·
TIL/python
다음과 같은 리스트가 있다. num_list=[15,16,22,28] 홀수인 15만을 남기기 위해 짝수를 제거하는 코드를 작성했고, 결과는 다음과 같았다. 22는 짝수인데 왜 지워지지 않고 남아있는 거지? 그 이유는 다음과 같다. for문에서 num_list의 원본을 그대로 사용하기 때문에 remove를 진행하면서 원본에 손상이 가고 있었다. remove의 과정을 살펴보기 위해 print를 사용하여 남은 숫자와 지워진 숫자를 살펴보았다. 0번 인덱스에 위치한 15는 홀수이기 때문에 if문 조건에 부합하지 않아 남아있게 된다. 1번 인덱스에 위치한 16은 짝수이기 때문에 if문 조건에 부합하기 때문에 삭제되어 num_list는 [15,22,28]이 된다. for 문에서 처음에 선언한 num_list를 그대..