728x90
for i in range(5):
print(i)
if i == 1:
i+=1
다음과 같은 코드가 있다.
우리가 이 코드를 돌렸을 때 생각하는 기댓값은 바로 0,1,3,4일 것이다. i가 1일때 1을 출력하고 i를 하나 증가시키므로 2가 건너뛰어질 것이라고 생각하기 때문이다.
실제로 자바, C, C++에서는 우리가 생각한대로 동작한다.
이렇듯, 파이썬에서는 for문의 인덱스 변수를 수정할 수 없다. 굳이 굳이 수정해야겠다면 while문을 사용해야 할 것 이다.
728x90
'파이썬' 카테고리의 다른 글
[Pytorch] custom dataset의 mean, std 구하기 (0) | 2023.05.23 |
---|---|
M1, M2 맥북에서 아나콘다 파이썬 3.6 또는 3.7 설치하기 (0) | 2023.04.17 |
파이썬 2차원 리스트의 최대, 최솟값 찾기 (0) | 2023.02.19 |
파이썬 리스트 선언 시 주의할 점 (0) | 2023.02.15 |
백준 파이썬 pypy3로 제출 시 메모리 초과 뜨는 이유/해결 (0) | 2023.01.27 |