제어문이란?
프로그램의 흐름을 제어해 주는 실행문을 제어문이라 합니다.
왜 흐름을 제어해야 할까요?
이유는 간단합니다.
우리가 원하는 결과를 얻기 위해서 입니다.
제어문의 종류
크게 두가지로 나눌 수 있습니다.
- 조건문
- 반복문
각각에 대해 자세히 살펴 보시죠!
조건문
조건문은 특정 조건이 참 또는 거짓인지에 따라 원하는 실행문을 실행하기 위한 실행문입니다.
파이썬에서는 if문이 있습니다.
if 문
if 조건 :
실행하고자 하는 코드
조건이 참(True)일 경우 실행하고자 하는 코드가 실행됩니다.
※if문 아래 작성하는 조건이 충족될 때 실행되는 코드는 한칸(탭) 띄어 써야합니다.
names = ["kim", "na", "park", "lee"]
if "lee" in names :
print("lee가 포함되어있다!")
else
조건이 참 일때와 거짓일 때 실행되는 코드를 구분하려고 할때 사용된다.
names = ["kim", "na", "park", "lee"]
user_name = "hong"
if user_name in names :
print(user_name,"은(는) 포함되어있다!")
else :
print(user_name,"은(는) 포함 되어있지 않다")
elif
if문에서 여러 조건을 추가 하고 싶은 경우에 사용합니다.
x = 19
if x < 10 :
print("x는 10보다 작다")
elif x < 20 :
print("x는 20보다 작다")
else :
print("x는20보다 크거나 같다")
반복문
특정 코드를 반복하려고 할 때 사용하는 실행문입니다.
for 문
어떤 시퀀스(리스트나 문자열 등)의 항목들을 들어있는 순서대로 반복하는 실행문입니다.
for 항목 in 시퀀스 :
사용자 정의 코드
[1,2,3,4] 이러한 리스트를 시퀀스의 예로 들 수 있습니다.
그리고 안에 있는 1, 2, 3, 4 각각의 값은 항목입니다.
for i in [1,2,3,4] :
print(i)
위의 예제 처럼 for문은 리스트 [1,2,3,4]의 각 항목들을 하나씩 순서대로 반복하여 i에 넣어 줍니다.
while 문
특정 조건이 참인 동안 반복 실행합니다.
for문 이라는 반복문이 있는데 왜 사용할까요?
for문의 경우 시퀀스에 있는 항목의 수가 반복을 결정합니다.
특정 조건을 충족 할때까지 항목의 수에 관계 없이 반복 시키고 싶을 때 사용합니다
while 조건 :
사용자 정의 코드
변수 i의 값이 10보다 작을 때까지 계속 반복 실행 하도록 만들어 보면 다음과 같습니다.
i = 0
while i < 10 :
print(i)
i += 1
break
for 문 while 문과 같은 반복문에서 반복을 빠져나가게 만들어 줍니다.
for i in range(1000):
print("for",i)
if i == 3:
break
x = 1
while x > 0:
x += 1
print("while", x)
if x == 3:
break
위의 예제에서 볼수 있듯이 반복문에서 break를 사용하면 해당 반복문을 빠져 나가게 하여 다음 코드를 실행할 수 있게 합니다.
continue
반복문에서 다음 반복을 계속하게 해줍니다.
정의를 들으면 이해가 안되실 겁니다.
예를 바로 보겠습니다.
print("==== break ====")
for i in range(10):
if i % 3 == 0 :
print(i, "는 3으로 나눴을 때 나머지 0")
break
print(i);
print("\n")
print("==== continue ====")
for i in range(10):
if i % 3 == 0 :
print(i, "는 3으로 나눴을 때 나머지 0")
continue
print(i);
break를 사용하였을 때는 반복문 자체를 빠져 나가게 합니다.
따라서 특정 항목에서 미리 설정한 특정 조건에서 반목문을 탈출하면, 다음 항목 자체가 반복 되지 않는것이죠.
하지만, continue의 경우 특정 조건을 충족했더라도 반복문을 탈출 하게 하지 않고, 다음 반복을 할 수 있게 해줍니다.
'Python > 기초문법' 카테고리의 다른 글
리스트를 사용할 때 자주 사용하는 메서드와 함수 (0) | 2021.09.30 |
---|---|
자료구조 - Python (0) | 2021.09.30 |
함수(function) - Python (0) | 2021.09.30 |
연산자(operator) - Python (0) | 2021.09.29 |
변수(variable) - Python (0) | 2021.09.29 |