728x90
2주차 기본미션: p.137 3번 문제 풀고 본인이 태어난 해와 띠를 출력하는 결과값 화면 인증샷
교재 정답에서처럼 변수에서 최대한 다 쓰고 조건문을 간단하게 하는 게 더 좋은 것 같다.
2주차 선택미션: else 구문과 elif 구문 정리한 내용 포스팅하기
# else 구문: 조건문이 오로지 두 가지로만 구분될 때
if 조건:
#조건이 참일 때 실행할 문장
else:
#조건이 거짓일 때 실행할 문장
# elif 구문: 조건이 세 개 이상일 때
if 조건A:
# 조건A가 참일 때 실행
elif 조건B:
# 조건B가 참일 때 실행
elif 조건C:
# 조건C가 참일 때 실행
else:
# 모든 조건이 거짓일 때 실행
if 조건문은 위에서 아래로 흐르기 때문에 위에서 이미 제외된 조건을 한 번 더 검사할 필요가 없다.
예를 들어 0 < a < b < c 일 때,
if number == c:
print("dog")
elif b <= number < c:
print( "bird")
elif a <= number < b:
print("apple")
else
print("others")
이렇게 쓸 필요가 없이
if number == c:
print("dog")
elif b <= number
print("bird")
elif c <= number
print("apple")
else
print("others")
이렇게 구현하는 게 더 효율적이다.
앞에서 비교했던 것을 다음 단계에서 또 하지는 않는지 꼭 확인할 것!!
# 만약 if 조건문에 비교 연산자가 없고 변수만 놓여 있을 때,
False로 변환되는 값은 None, 숫자 0, 0.0, 빈 컨테이너(빈 문자열, 빈 바이트열, 빈 리스트 등) 이다.
(즉 어떤 조건에서 False 가 변환되면 그 다음 조건문으로 이동한다)
# pass 키워드
파이썬에서 if 조건문 사이에 아무 내용을 작성하지 않는다면 IndentationError(들여쓰기 오류)가 발생한다.
if a < 0:
pass
else:
pass
그럴 때 이렇게 pass를 써준다. (아직 구현하지 않은 부분을 쓸 때) 그러면 그 부분은 그냥 지나가게 된다.
하지만 만약 그 구현하지 않은 부분을 잊어버릴까봐 걱정이 된다면,
if a < 0:
raise NotImplementedError
else:
raise NotImplementedError
이렇게 raise NotImplementedError를 사용하여 강제로 오류를 발생시켜서 까먹는 걸 방지할 수 있다!
반응형
'컴퓨터 & 코딩 > Python' 카테고리의 다른 글
[혼공학습단 8기][혼공파] 4주차 미션 (0) | 2022.07.28 |
---|---|
[혼공학습단 8기][혼공파] 3주차 미션 (0) | 2022.07.19 |
[혼공학습단 8기][혼공파] 1주차 미션 (0) | 2022.07.07 |
[혼공학습단 8기][혼공파] 한빛미디어 혼공학습단 8기 선정! (0) | 2022.06.30 |
스파르타 코딩클럽 파이썬 혼자놀기 패키지 회고 (0) | 2020.10.06 |