조건문(conditional statement)은 조건에 따라 특정한 동작을 하도록 하는
프로그래밍 명령어를 말한다.
if<조건>:
<수행 명령 1-1> #들여쓰기 후 수행 명령 입력
<수행 명령 1-2> #같은 조건에서 계속 수행할 명령일 경우 들여쓰기 유지
else:
<수행 명령 2-1> # 조건 불일치 시 수행할 명령 입력
<수행 명령 2-2>
print('Tell me your age?')
myage = int(input())
if myage < 30:
print('Welcome to the Club.')
else:
print('Oh! No. You are not accepted.')
| 비교 연산자 | 비교 상태 | 설명 |
|---|---|---|
| x < y | ~보다 작음 | x가 y보다 작은지 검사 |
| x > y | ~보다 큼 | x가 y보다 큰지 검사 |
| x == y | 같음 | x와 y의 값이 같은지 검사 |
| x is y | 같음(메모리 주소) | x와 y의 메모리 주소가 같은지 검사 |
| x != y | 같지 않음 | x와 y의 값이 같지 않은지 검사 |
| x is not y | 같지 않음(메모리 주소) | x와 y의 메모리 주소가 같지 않은지 검사 |
| x >= y | 크거나 같음 | x가 y보다 크거나 같은지 검사 |
| x <= y | 작거나 같음 | x가 y보다 작거나 같은지 검사 |
| 연산자 | 설명 | 예시 |
|---|---|---|
| and | 두 값이 모두 참일 경우 True, 그렇지 않은 경우 False | (7>5) and (10>5)는 True |
| or | 두 값 중 하나만 참일 경우 True, 두 값 모두 거짓이면 False | (7<5) or (10<5)는 False |
| not | 값을 역으로 반환하여 판단 | not(7<5)는 True |
중첩 if문을 간단히 표현하려면 if-elif-else문을 사용한다.
if문만 쓰면 차례대로 실행되어서 모든 조건이 만족되어 마지막 if문의 결과로 나옴.
score = int(input('Enter your score: '))
if score >=90: grade = 'A'
elif score >=80: grade = 'B'
elif score >=70: grade = 'C'
elif score >=60: grade = 'D'
else: grade = 'F'
print(grade)
반복문(loop)은 말 그대로 문장을 반복하도록 만드는 것으로, 정해진 동작을 반복적으로 수행할 때 사용하는 명령어이다.
가장 기본적인 반복문으로 반복 범위를 지정하여 반복을 수행한다.
for문으로 반복문을 만들 때는 먼저 for를 입력하고 반복되는 범위를 지정해야 한다.
for looper in [1,2,3,4,5]:
print('hello')
hello
hello
hello
hello
hello
※ range문법
for 변수 in range(시작 번호, 마지막 번호, 증가값)
for i in range(1, 10, 2):
print(i)
1
3
5
7
9
while문은 어떤 조건이 만족하는 동안 명령 블록을 수행하고, 해당 조건이 거짓일 경우 반복 명령문을 더이상 수행하지 않는 구문이다.
i=1 # i 변수에 1 할당
while i < 10: # i가 10 미만인지 판단
print(i) # 조건을 만족할 때 i 출력
i += 1 # i에 1 더하는 걸 반복하다가 i가 10이 되면 종료
1
2
3
4
5
6
7
8
9
★ for문과 while문은 기본적으로 유사하며 서로 변환이 가능하다.
하지만 for문은 반복 횟수를 정확하게 알고 있고, 반복 횟수가 변하지 않을 때 사용한다.
반면, while문은 반복 실행 횟수가 명확하지 않고 어떤 조건을 만족하면 프로그램을 종료하고자 할 때 사용한다.
중간에 반복을 종료하거나 실행 중인 반복문을 건너뛸 수도 있다.
for i in range(10):
if i == 5: break # i가 5가 되면 반복 종료
print(i)
print("End of Program") # 반복 종료 후 'End of Program' 출력
0
1
2
3
4
End of Program
for i in range(10):
if i == 5: continue # i가 5가 되면 i를 출력하지 않음
print(i)
print("End of Program") # 반복 종료 후 'End of Program' 출력
0
1
2
3
4
6
7
8
9
End of Program
for i in range(10):
print(i)
else:
print('End of Program')
0
1
2
3
4
5
6
7
8
9
End of Program