250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- on_delete
- pm2
- crud2
- OSI7계층
- manytomanyfield
- TypeError: this.boardRepository.createBoard is not a function
- 호이스팅
- Django
- typescript
- CORS
- bcrypt
- westagram
- 실행 컨텍스트
- 장고초기세팅
- rebase
- Jest
- 자바스크립트
- javascript
- django westagram
- docker
- 스코프
- status code
- wecode
- 트랜잭션
- async/await
- 프로미스
- node
- JWT
- 노드
- nodeJS
Archives
- Today
- Total
될때까지
개념정리 :: break와 continue 본문
728x90
이 블로그에 정리되어있는 모든 개념들은 학습 개념으로 혼자 정리한 내용입니다.
잘못 기술한 부분이 있을 수 있으니 발견하시면 언제든지 지적해주세요😄
문제 풀이를 하면서 자꾸 헷갈리는 break와 continue를 정리해보자.
우선 break는 속해있는 가장 가까운 반복문을 깨고 나간다. 즉 반복문이 다 끝나지 않아도 탈출할 수 있는 명령어이다.
for x in range(1, 11):
if x % 2 == 0:
print(f'{x}는 2의 배수입니다.')
break
print(f'{x}는 2의 배수가 아닙니다.')
# 실행결과
# 1는 2의 배수가 아닙니다.
# 2는 2의 배수입니다.
위와 같은 코드를 실행하면, 첫 바퀴에 x는 1이 되고 if문의 조건에 일치하지 않기 때문에 맨 아래의 print문이 실행된다.그 다음 두번째 바퀴에서 x는 2가 되고 if문의 조건에 해당되어 첫번째 print문을 실행시킨다. 그 후 break를 만나 가장 가까운 for문을 탈출해 반복문의 사이클이 종료됨으로, 더이상의 print문이 실행되지 않게 된다.
continue는 해당 루프만 종료시키고 다음 루프를 실행시킨다. 즉 반복문을 건너 뛰는 개념이다.
for x in range(1, 11):
if x % 2 == 0:
continue
print(f'{x}는 2의 배수입니다.')
print(f'{x}는 2의 배수가 아닙니다.')
# 실행 결과
# 1는 2의 배수가 아닙니다.
# 3는 2의 배수가 아닙니다.
# 5는 2의 배수가 아닙니다.
# 7는 2의 배수가 아닙니다.
# 9는 2의 배수가 아닙니다.
첫 바퀴에 x는 1이 되고 if문의 조건에 일치하지 않기 때문에 맨 아래 print문이 실행되는 것은 break와 동일하다. 하지만 그다음 두번째 바퀴에서 x는 2가 되고 if문의 조건에 해당되므로 continue를 만나게 되는데, 이 때 아래의 print문을 실행시키지 않고 다음 루프인 x가 3일때로 시작점이 변경이 된다. 그래서 반복문은 끝까지 돌지만, x가 2로 나눠떨어질 경우 continue코드를 먼저 만나기 때문에 print문이 실행되지 않는다.
break는 말 그대로 탈출이고, continue는 말 그대로 다음 반복문을 이어가도록 해주는 아이구나.
정리했으니까 이제 헷갈리지 말자!😝
728x90
'학습 > 개념정리' 카테고리의 다른 글
개념정리 :: 쿠키, 세션, 캐시 (0) | 2022.04.04 |
---|---|
개념정리 :: 프로세스, 쓰레드 (0) | 2022.04.04 |
개념정리 :: CORS? (0) | 2022.02.23 |
개념정리 :: JWT? (0) | 2022.02.22 |
개념정리 :: ORM? (0) | 2022.02.22 |