[파이썬] 복습 노트 - 6 | 조건문, 반복문, 기타 제어문...

반응형

 

제어문

- 프로그램의 흐름을 제어하는 것

1) 조건문 

   if 문 : 특정 조건식의 결과에 따라 실행되는 구문이 달라짐

2) 반복문

   while문 : 조건식을 만족하는 동안 반복 실행
   for문 : 특정 횟수(범위)만큼 반복 실행

3) 기타 제어문

   break : 반복문 강제 종료
   continue : 아래 문장 스킵다음 반복으로 넘어간다
   pass 아무 작업도 하지 않을 때 

              오류를 발생시키지 않고 프로그램 정상 실행

              ex) 반복문 내에서 아직 코드를 완성하지 못했지만 다른부분은 정상으로 동작하는지 확인할 때 등


조건문

- 특정 조건식의 결과에 따라 실행되는 구문이 달라짐
- ** 조건식 : 결과가 True/ False로 나오는 것

1) if문

- if : 만약 ~라면 

[ if문 문법 구조 ]

if 조건식 :
    조건식이 참일때 실행할 문장
    ...
조건문 밖의 문장
(들여쓰기 영역 밖의 문장, 조건식이 참이든 거짓이든 실행)

 

2) if ~ else 문

- if ~ else ~ : 만약 ~라면, 그렇지 않다면

[ if ~ else문 문법 구조 ]

if 조건식 : 
    조건식이 참일 때 실행할 문장
else :
    조건식이 거짓일 때 실행할 문장

- else는 if문 다음에 작성

- else는 조건식을 사용하지 않는다.

3) if ~ elif ~ else문

- if ~ elif ~ else ~ : 만약 ~라면, 다른 조건들, 그렇지 않다면

- 조건식이 최소 2개 이상 작성되어야 함

 

 

[ if ~ elif ~ else문 문법 구조 ]

if 조건식1 :
    조건식1이 참일 때 실행할 문장
    
elif 조건식2 :
    조건식 1이 거짓이고, 조건식2가 참일 때 실행할 문장
    
elif 조건식3 :
    조건식 1과 2가 거짓이고, 조건식3이 참일 때 실행할 문장
    
elif 조건식4 :
...
else :
    조건식이 모두 거짓일 때 실행할 문장

반복문

1.  while문

- 특정 조건을 만족하는 동안 반복해서 실행

- 조건식이 True일 동안 반복실행되는 반복문

 

[ while문 문법 구조 ]

while 조건식 :
    조건식이 참일 동안 반복할 문장
    ...
ex)
while num < 11 : # num에 저장된 값이 11보다 작을 동안 반복
    print(num, end = " ")
    num += 1 # num에 저장된 값 1씩 증가
print("\nwhile문 종료!")

while문 실행 순서

조건식 실행 -> True일 경우, while문의 들여쓰기 안의 문장들 실행

-> 조건식 실행

-> ... -> 조건식의 결과가 False일 경우, while문 반복 종료

 

2. for문

- 범위나 횟수를 지정해서 반복 실행

 

[ for문 문법 구조 ]

for 변수명 in 집합(문자열, 리스트, 튜플, 세트, 딕셔너리, range(),...) :
    반복할 문장
    (for 뒤의 변수가 집합요소를 모두 가져올때까지 하나씩 실행)

 

+) 이중 반복문

: 반복문 안에 또다른 반복문이 있는 구조

ex)
for 변수 in 집합 :
    for 변수 in 집합 :
        반복할 문장
        
while 조건문 :
    while 조건문 :
        반복할 문장

기타제어문

(1) break

처리의 흐름을 강제로 종료하고 그 영역에서 나가는 구문(반복문 강제 종료)

# 1 ~ 10까지 범위 중 5까지만 출력하기
for i in range(1, 11) :
    print(i, end = " ")
    if i == 5 :
        break # 반복문 강제 종료

 

무한반복문에서 반복을 종료하기 위해서도 사용한다.

while True :
    num = int(input("정수 입력 : "))
    if num >= 1 and num <=10 :
        print (f"입력받은 정수는 \"{num}\"입니다")
        break
    print("1 ~ 10 사이의 정수를 입력하세요!")

위 반복문은 조건문 자체가 True이기 때문에 무한히 반복되지만

안에 if문을 만족할시 break를 만나서 반복문을 탈출한다.

(2) continue

반복문에서 사용되는 기타 제어문

블록 내의 처리를 건너뛰고 다음 처리를 계속하는 구문
바로 다음 순번의 반복 내용을 실행함

# 1 ~ 10까지 정수 중 5만 빼고 출력하기
for i in range(1, 11) :
    if(i == 5) :
        print("  ", end = " ")
        continue # 아래 코드를 실행하지 않고 바로 다음 반복으로 넘어간다.
    print(i, end = " ") # i에 저장된 값이 5일 경우는 실행되지 않음



(3) pass

블럭 내에서 실행할 코드가 없을 때 다음 코드를 실행시키는 구문
조건문, 반복문에서 넣어줄 실행문을 정하지 않은 경우
코드를 작성 후, 동작 확인을 위해 실행할 때 해당 부분에서
오류가 발생하지 않도록 하기 위해 사용

if True :
    pass # 코드 내용 안정했으니 일단 넘어가
print("프로그램 종료!")
반응형