파이썬의 조건문과 반복문에는 if문, if~elif문, while문, for문이 있습니다. 조건문과 반복문을 하나씩 살펴보겠습니다.
1. if문
if문의 기본 구조는 다음과 같습니다. 조건문이 참(True)일 때 실행문이 실행됩니다. 조건문이 거짓(False)일 때는 else문이 실행됩니다.
if 조건문:
실행문
else:
실행문
(1) if 조건문의 결과는 True 또는 False여야 합니다.
(2) if 조건문과 else 다음에 반드시 콜론(:)을 써야 합니다.
(3) 파이썬에서는 들여 쓰기를 해야 합니다. if 조건문 또는 else문 안에 실행할 코드는 반드시 들여쓰기를 합니다.
예제 1: 기본 if문
if 1 < 2:
print("Hello!") # Hello!
위의 if 문에서 조건문 1 < 2 가 True이기 때문에 "Hello!"를 출력합니다.
예제 2: 조건이 거짓인 if문
if 1 > 2:
print("Hi!")
위의 if문의 조건문은 False이기 때문에 실행되지 않습니다.
비교 연산자
비교 연산자는 두 값을 비교하여 True 또는 False를 반환합니다. 비교연산자에서 '=='는 같다는 표시이고, '='는 비교 연산자가 아니라 대입 연산자임을 주의합니다.
a < b
: a가 b보다 작습니다.a > b
: a가 b보다 큽니다.a == b
: a가 b와 같습니다.a != b
: a가 b와 같지 않습니다.a >= b
: a가 b보다 크거나 같습니다.a <= b
: a가 b보다 작거나 같습니다.
불(bool) 연산
불 연산자는 논리적인 참과 거짓을 다룹니다.
a and b
: a와 b가 모두 참이어야 True입니다.a or b
: a 또는 b 중 하나라도 참이면 True입니다.not a
: a가 거짓이면 True입니다.
예제 3: and 연산자
a = 1
b = 2
if a == b and a != 0:
print(a)
else:
pass
위의 코드에서 조건문 a == b and a != 0
는 False이므로 else문의 pass를 실행합니다. pass는 아무 작업도 하지 않고 넘어갈 때 사용합니다.
in과 not in
파이썬에서는 in
과 not in
을 사용하여 리스트에 특정 값이 있는지 확인할 수 있습니다.
listFruit = ["사과", "망고", "오렌지"]
if "사과" in listFruit: #"사과" 있으면 True
print("사과가 있어요.")
else:
print("사과가 없어요.")
if "사과" not in listFruit: #"사과" 없으면 True
print("사과가 없어요.")
else:
print("사과가 있어요.")
위의 코드에서 첫 번째 if문은 "사과"가 listFruit에 있기 때문에 "사과가 있어요."를 출력합니다. 두 번째 if문은 "사과"가 listFruit에 있기 때문에 else문을 실행하여 "사과가 있어요."를 출력합니다.
2. if~elif문
기본 구조는 다음과 같습니다. 조건문이 여러 개일 때 if 조건문과 else문 사이에 elif문을 사용합니다. elif문은 여러 번 쓸 수 있으며, 마지막에 else문은 선택 사항입니다.
if 조건문:
실행문
elif 조건문:
실행문
elif 조건문:
실행문
else:
실행문
예제 4: elif문
score = 71
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
elif score >= 60:
print("D")
else:
print("F")
위의 코드에서 점수가 71이기 때문에 세 번째 조건문인 score >= 70
이 True입니다. 따라서 "C"를 출력합니다.
조건부 표현식 (conditional expression)
조건부 표현식은 if문을 간단하게 표현할 수 있는 방법입니다.
(1) if문
score = 90
if score == 90:
print("pass")
else:
print("fail")
(2) 조건부 표현식
score = 90
print("pass") if score == 90 else print("fail")
위의 코드에서 조건부 표현식은 한 줄로 if문을 표현할 수 있습니다. 점수가 90이므로 "pass"를 출력합니다.
3. While문
while문의 기본 구조는 다음과 같습니다. 조건문이 참인 동안 실행문을 반복합니다.
while 조건문:
실행문
무한루프
while문을 무한하게 반복 실행하게 할 수 있습니다. 이를 무한루프라고 합니다.
while True:
print("Hi")
위의 코드는 조건문이 항상 True이기 때문에 "Hi"를 무한히 출력합니다.
break
반복문에서 break를 사용하여 강제로 while문을 빠져나올 수 있습니다.
continue
반복문에서 continue를 사용하면 반복문의 처음으로 돌아갑니다.
4. for문
for문은 리스트, 튜플, 문자열 등의 요소를 하나씩 가져와서 변수에 저장하고, 실행문을 실행합니다.
for 변수 in 리스트/튜플/문자열:
실행문
예제 5: for문
listNumber = [1, 2, 3]
for i in listNumber:
print(i)
위의 코드에서 리스트 listNumber
의 요소를 하나씩 가져와 변수 i
에 저장하고, print(i)
를 실행합니다. 출력 결과는 다음과 같습니다:
1
2
3
range() 함수
for문에 range() 함수를 많이 사용합니다. range(시작값, 끝값+1, 간격)
과 같은 형식으로 사용합니다. range 안에 특정값 하나만 있으면 0부터 특정값-1까지가 범위가 됩니다.
for i in range(11): # 0부터 시작
print(i) # 0~10까지 출력
위의 코드는 0부터 10까지 출력합니다.
예제 6: range 함수
for i in range(1, 11):
print(i) # 1~10까지 출력
for i in range(1, 11, 2): # 1, 3, 5, 7, 9 출력
print(i)
첫 번째 for문은 1부터 10까지 출력하고, 두 번째 for문은 1부터 10까지 2 간격으로 출력합니다.
이상으로 조건문과 반복문에 대해 알아보았습니다. 파이썬의 함수에 대해 확인하시려면 아래의 글을 참고하시기 바랍니다.