728x90
https://www.youtube.com/watch?v=PCJOT5LHzxE&list=PLVsNizTWUw7H9_of5YCB0FmsSc-K44y81&index=8
조건문과 반복문
조건문
- 조건문은 프로그램의 흐름을 제어하는 문법
- 조건문을 이용해 조건에 따라서 프로그램의 로직을 설정할 수 있음
x = 15
if x >= 10:
print("x >= 10")
if x >= 0:
print("x >= 0")
if x >= 30:
print("x >= 30")
실행 결과
x >= 10
x >= 0
들여쓰기
- 파이썬에서 코드의 블록(Block)을 들여쓰기(Indent)로 지정함
- 다음의 코드에서 ②번 라인은 무조건 실행됨
score = 85
if score >= 70:
print('성적이 70점 이상입니다')
if score >= 90:
print('우수한 성적입니다')
else:
print('성적이 70점 미만입니다') # ①
print('조금 더 분발하세요') # ①
print('프로그램을 종료합니다') # ②
실행 결과
성적이 70점 이상입니다
프로그램을 종료합니다
- 텝을 사용하는 쪽과 공백 문자(space)를 여러 번 사용하는 쪽으로 두 진영이 있음
- 이에 대한 논쟁은 지금까지도 활발함
- 파이썬 스타일 가이드라인에서는 4개의 공백 문자를 사용하는 것을 표준으로 설정하고 있음
조건문의 기본 형태
-
조건문의 기본적인 형태는 if ~elif ~ else임
-
조건문을 사용할 때 elif 혹은 else 부분은 경우에 따라서 사용하지 않아도 됨
if 조건문 1: 조건문 1이 True일 때 실행되는 코드 elif 조건문 2: 조건문 1에 해당하지 않고 조건문 2가 True 일 때 실행되는 코드 else: 위의 모든 조건문이 모두 True 값이 아닐 때 실행되는 코드
-
성적 구간에 따른 학점 출력 예제
- 성적이 90점 이상일 때: A
- 성적이 90점 미만 80점 이상일 때: B
- 성적이 80점 미만 70점 이상일 때: C
- 성적이 70점 미만일 때: F
score = 85
if score >= 90:
print("학점: A")
elif score >= 80:
print("학점: B")
elif score >= 70:
print("학점: C")
else:
print("학점: F")
실행 결과
학점: B
비교 연산자
- 비교 연산자는 특정한 두 값을 비교할 때 이용할 수 있음
- 대입 연산자(
=
)와 같음 연산자(==
)의 차이점에 유의
- 대입 연산자(
비교 연산자 | 설명 |
---|---|
X == Y | X와 Y가 서로 같을 때 참(True)이다 |
X != Y | X와 Y가 서로 다를 때 참(True)이다 |
X > Y | X가 Y보다 클 때 참(True)이다 |
X < Y | X가 Y보다 작을 때 참(True)이다 |
X >= Y | X가 Y보다 크거나 같을 때 참(True)이다 |
X <= Y | X가 Y보다 작거나 같을 때 참(True)이다 |
논리 연산자
- 논리 연산자는 논리 값 (True/False) 사이의 연산을 수행할 때 사용
논리 연산자 | 설명 |
---|---|
X and Y | X와 Y가 모두 참(True)일 때 참(True)이다 |
X or Y | X와 Y중에 하나만 참(True)이어도 참(True)이다 |
not X | X가 거짓(False)일 때 참(True)이다 |
파이썬의 기타 연산자
- 다수의 데이터를 담는 자료형을 위해 in 연산자와 not in 연산자가 제공됨
- 리스트, 튜플, 문자열, 딕셔너리 모두에서 사용이 가능함
in 연산자와 not in 연산자 | 설명 |
---|---|
X in 리스트 | 리스트 안에 x가 들어가 있을 때 참(True)이다 |
x not in 문자열 | 문자열 안에 x가 들어가 있지 않을 때 참(True)이다 |
파이썬의 pass 키워드
- 아무것도 처리하고 싶지 않을 때 pass 키워드를 사용
- 예시) 디버깅 과정에서 일단 조건문의 형태만 만들어 놓고 조건문을 처리하는 부분은 비워놓고 싶은 경우
score = 85
if score >= 80:
pass # 나중에 작성할 소스코드
else:
print('성적이 80점 미만입니다')
print('프로그램을 종료합니다')
실행 결과
프로그램을 종료합니다
조건문의 간소화
- 조건문에서 실행될 소스코드가 한 줄인 경우 굳이 줄 바꿈을 하지 않고도 간략하게 표현할 수 있음
score = 85
if score >= 80: result = "Success"
else: result = "Fail"
print(result)
실행 결과
Success
- 조건부 표현식(Conditional Expression)은 if ~ else문을 한 줄에 작성할 수 있도록 해줌
score = 85
result = "Success" if score >= 80 else "Fail"
print(result)
실행 결과
Success
파이썬 조건문 내에서의 부등식
- 다른 프로그래밍 언어와 다르게 파이썬은 조건문 안에서 수학의 부등식을 그대로 사용할 수 있음
- 예를 들어 x > 0 and x < 20 과 0 < x < 20은 같은 결과를 반환함
코드 스타일 1
x = 15
if x > 0 and x < 20:
print("x는 0 이상 20 미만의 수입니다)
코드 스타일 2
x = 15
if 0 < x < 20:
print("x는 0 이상 20 미만의 수입니다")
- 본 책에서는 다른 언어를 다룰 때 햇갈리지 않도록 x > 0 and x < 20와 같이 비교 연산자 사이에
and, or 등의 연산자가 들어가는 형태의 코드를 이용함
728x90
'CodingTest' 카테고리의 다른 글
[이것이 코딩 테스트다 with Python] 10강 파이썬 문법: 함수와 람다 표현식 (0) | 2021.01.04 |
---|---|
[이것이 코딩 테스트다 with Python] 9강 파이썬 문법: 반복문 (0) | 2021.01.04 |
[이것이 코딩 테스트다 with Python] 7강 파이썬 문법: 기본 입출력 (0) | 2021.01.04 |
[이것이 코딩 테스트다 with Python] 6강 파이썬 문법: 사전, 집합 자료형 (0) | 2021.01.04 |
[이것이 코딩 테스트다 with Python] 5강 파이썬 문법: 문자열, 튜플 자료형 (0) | 2021.01.04 |
댓글