320x100
remove는 오늘 처음 알았는데,
내가 지정해준 범위에 해당되는 값 만큼 지워주는 함수다.
예를들어
2개 이상을 삭제 하길 원한다고 하면
오른쪽 부터 세었을때 1개가 초과하는건 모두 삭제된다.
numbers = [2,22,7,8,9,2,7,3,5,2,7,1,3,2]
print(numbers)
idx = 0
while True:
if idx >= len(numbers):
break
if numbers.count(numbers[idx]) >= 3:
# remove는 중복값을 모두 제거해주는 함수같다.
# 음... 여기선 지정해준 값이 2개 이상 즉, 2개는 2개이상에 걸리기 때문에
# 2이상은 모두 삭제가 된건가?
# 맞다. 3으로 해주니깐 남는 2가 2개고 오른쪽부터 세었을때 지정 범위가
# 넘는건 삭제되는것같다.
numbers.remove(numbers[idx])
# 이건 매우 중요하다. 만약 지우기에 성공했을때, 그 인덱스가 밀려나버리면
# 원래 인덱스0 값에 해당하던것도 달라질 수 있기 때문에 필요하다.
continue
idx += 1
print(numbers)
300x250
'개발일지 > 임시카테고리' 카테고리의 다른 글
[파이썬으로 익히는 말랑말랑 알고리즘] comprehension과 반복문 (0) | 2022.05.12 |
---|---|
파이썬 2, 3개의 값에서 중복없이 짝을 지을 수 있는 경우의 수 코드 및 공식 (0) | 2022.05.11 |
파이썬 100명의 난수로 각 계층 방문자수 및 총 수입금액 계산기 (0) | 2022.05.11 |
파이썬 짝수, 홀수 반복문 코드 (0) | 2022.05.11 |
[복기] 파이썬 소수 prime number 코드 분석 (추가. 약수,소수 반복문 코드) (0) | 2022.05.11 |