ko ko ko en en en ko ko cs zh ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko en ko en ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko ko fr ko ko ko ko fr ko ko ko en en ko en zh en en
파이썬 코딩 도장: 14.1 else 사용하기
◀ 13.7 심사문제: 온라인 할인 쿠폰 시스템 만들기14.2 else와 들여쓰기 ▶︎
Unit 14. else를 사용하여 두 방향으로 분기하기
if 조건문은 분기(branch)를 위한 문법입니다. 즉, 분기는 "둘 이상으로 갈라지다"라는 뜻으로 프로그램의 흐름을 둘 이상으로 나누는 것을 말합니다. 이는 마치 도로의 분기점과 같죠.
▼ 그림 14-1 도로 이정표
지금까지 if 조건문으로 조건식에 맞는 코드만 실행했습니다. if에 else를 사용하면 조건식이 만족할 때와 만족하지 않을 때 각각 다른 코드를 실행할 수 있습니다. 즉, 프로그램이 두 방향으로 분기하는 것이죠.
실생활에서 전화가 왔을 때의 예를 들면 다음과 같은 모양이 됩니다.
if 광고 전화인가?:     전화를 끊고, 차단 목록에 등록한다. else:     계속 통화한다.
else는 if 조건문 뒤에 오며 단독으로 사용할 수 없습니다. 그리고 if와 마찬가지로 else도 :(콜론)을 붙이며 다음 줄에 실행할 코드가 옵니다.
if 조건식:      코드1 else:      코드2
그럼 다음과 같이 들여쓰기를 맞춰서 파이썬 셸에 코드를 입력해보세요.
14.1.1  if와 else의 기본 형태와 실행 흐름 알아보기
else는 if의 조건식이 만족하지 않을 때 코드를 실행합니다. 여기서는 x에 5가 들어있어서 x == 10을 만족하지 않으므로 else의 print가 실행되어 '10이 아닙니다.'가 출력됩니다.
▼ 그림 14-2 if와 else
즉, 조건식이 참(True)이면 if의 코드(if 본문)가 실행되고, 거짓(False)이면 else의 코드(else 본문)가 실행됩니다. 코드와 실행 흐름을 비교해보세요.
▼ 그림 14-3 if와 else의 실행 흐름
참고 | 변수에 값 할당을 if, else로 축약하기
변수 x에 10이 들어있으면 y에 x를 할당하고, 아니면 y에 0을 할당하는 코드는 다음과 같이 만들 수 있습니다.
>>> x = 5 >>> if x == 10: ...     y = x ... else: ...     y = 0 ... >>> y 0
이렇게 if, else에서 변수에 값을 할당할 때는 변수 = 값 if 조건문 else 값 형식으로 축약할 수 있으며 이런 문법을 조건부 표현식(conditional expression)이라고 부릅니다.
>>> x = 5 >>> y = x if x == 10 else 0 >>> y 0
보통 조건부 표현식은 람다 표현식에서 자주 사용합니다. 활용 방법은 '32.2 람다 표현식과 map, filter, reduce 함수 활용하기'를 참조하세요.
◀ 13.7 심사문제: 온라인 할인 쿠폰 시스템 만들기14.2 else와 들여쓰기 ▶︎
Unit 1. 소프트웨어 교육과 파이썬
Unit 2. 파이썬 설치하기
Unit 3. Hello, world!로 시작하기
Unit 4. 기본 문법 알아보기
Unit 5. 숫자 계산하기
Unit 6. 변수와 입력 사용하기
Unit 7. 출력 방법 알아보기
Unit 8. 불과 비교, 논리 연산자 알아보기
Unit 9. 문자열 사용하기
Unit 10. 리스트와 튜플 사용하기
Unit 11. 시퀀스 자료형 활용하기
Unit 12. 딕셔너리 사용하기
Unit 13. if 조건문으로 특정 조건일 때 코드 실행하기
Unit 14. else를 사용하여 두 방향으로 분기하기
14.3 if 조건문의 동작 방식 알아보기
14.4 조건식을 여러 개 지정하기
14.6 연습문제: 합격 여부 판단하기
14.7 심사문제: 합격 여부 판단하기
Unit 15. elif를 사용하여 여러 방향으로 분기하기
Unit 16. for 반복문으로 Hello, world! 100번 출력하기
Unit 17. while 반복문으로 Hello, world! 100번 출력하기
Unit 18. break, continue로 반복문 제어하기
Unit 19. 계단식으로 별 출력하기
Unit 20. FizzBuzz 문제
Unit 21. 터틀 그래픽스로 그림 그리기
Unit 22. 리스트와 튜플 응용하기
Unit 23. 2차원 리스트 사용하기
Unit 24. 문자열 응용하기
Unit 25. 딕셔너리 응용하기
Unit 26. 세트 사용하기
Unit 27. 파일 사용하기
Unit 28. 회문 판별과 N-gram 만들기
Unit 29. 함수 사용하기
Unit 30. 함수에서 위치 인수와 키워드 인수 사용하기
Unit 31. 함수에서 재귀호출 사용하기
Unit 32. 람다 표현식 사용하기
Unit 33. 클로저 사용하기
Unit 34. 클래스 사용하기
Unit 35. 클래스 속성과 정적, 클래스 메서드 사용하기
Unit 36. 클래스 상속 사용하기
Unit 37. 두 점 사이의 거리 구하기
Unit 38. 예외 처리 사용하기
Unit 39. 이터레이터 사용하기
Unit 40. 제너레이터 사용하기
Unit 41. 코루틴 사용하기
Unit 42. 데코레이터 사용하기
Unit 43. 정규표현식 사용하기
Unit 44. 모듈과 패키지 사용하기
Unit 45. 모듈과 패키지 만들기
Unit 46. 실전예제: 웹의 데이터로 그래프 그리기
C 언어 코딩 도장
- 이 사이트에 실린 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 (주)도서출판 길벗과 지은이에게 있습니다.
- 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다.
- 책의 내용을 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다.
- 링크, SNS 공유는 허용합니다.
서울시 마포구 서교동 월드컵로 10길 56 (서울시 마포구 서교동 467-9)
Copyright © 2016-2021 Coding Dojang