본문 바로가기
Tutorial/Python

파이썬 문법 빠르게 훑어보기: if문, if~elif문, while문, for문

by CLJ 2024. 3. 14.

파이썬의 조건문과 반복문에는 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

 

 

파이썬에서는 innot 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 간격으로 출력합니다.

 

이상으로 조건문과 반복문에 대해 알아보았습니다. 파이썬의 함수에 대해 확인하시려면 아래의 글을 참고하시기 바랍니다.