TIL #13 Python 개념발표(1)

kgh239·2020년 8월 5일
0

사전스터디 시간에 각자 공부한 python 문법 중 개념 하나를 선택하여 예제를 풀고 조원들에게 설명하는 시간을 갖었다. 나는 조원들에게 for와 while의 차이를 보여 주고 싶었다. 또한 반복문과 같이 많이 쓰이는 break과 continue의 차이를 설명하였다.


모든 예문은 구구단을 작성하는 코드로 설명 하였다.(개인적으로 구구단이 가장 쉽게 반복문을 나타내는 표현 같음)

1.while 과 for

def ex_while():
    i=2
    j=1
    while i<10:
        while j<10:
            print('{} X {} = {}'.format(i, j, i*j))
            j += 1
        j = 1
        i += 1
  • while을 2번 사용해서 구구단을 표현
  • i는 구구단의 앞의 숫자를 j는 뒷의 숫자를 표현
  • 안 쪽 while의 j는 9에서 다시 1이 되야 되므로 다시 while 종료 후 1로 다시 초기화
def ex_for():
    for i in range(2,10):
        for j in range(1,10):
            print('{} X {} = {}'.format(i, j, i*j))
  • 조건이 아닌 컨테이너가 들어가 컨테이너의 길이만큼 반복
  • 따로 조건을 컨트롤할 코드가 필요 없음

결론

1) while의 경우 조건에 따로 반복 여부가 결정되는 만큼 조건을 컨트롤하는 코드가 필요. 무한루프 같은 특정 조건까지 계속 반복을 할 때 유용.
2) for는 컨테이너의 요소를 가져오면서 컨테이너의 길이만큼 반복 하므로 컨테이너의 요소들을 반복적으로 처리할 때 유용.

2. break

def ex_break():
    n = 2
    loof = True
    while loof :
        for x in range(1,10):
            print('{} X {} = {}'.format(n,x , n*x))
        n +=1 
        con=input(str(n)+'단을 출력하시겠습니까?(Y/N):')
        if con == 'N':
            break
        for x in range(1,10):
            print('{} X {} = {}'.format(n,x , n*x))
        loof = False
    print('구구단이 종료 되었습니다.')
  • 처음에 2단을 출력하고 3단 출력 여부를 물어본다.
  • Y : 3단을 출력하고 프로그램 종료
  • N : 3단을 출력하지 않고 프로그램 종료

결론

1) 반복문에서 break를 만나게 되는 경우 break 아래 코드는 실행하지 않고 반복문은 종료 된다.

3.continue

def ex_continue():
    n = 2
    loof = True
    while loof :
        for x in range(1,10):
            print('{} X {} = {}'.format(n,x , n*x))
        con=input(str(n)+'단을 다시 출력하시겠습니까?(Y/N):')
        if con == 'Y':
            continue
        n += 1
        for x in range(1,10):
            print('{} X {} = {}'.format(n,x , n*x))
        loof = False
    print('구구단이 종료 되었습니다.')
  • 처음에 2단을 출력하고 2단의 재출력 여부를 물어본다.
  • Y : 2단을 재출력하고 다시 2단의 재출력 여부를 물어본다.
    /1d8c31d9-dfd1-4913-8c75-81cf79c1a825/image.png)
  • N : 3단을 출력하고 프로그램 종료

결론

1) 반복문에서 continu를 만나게 되는 경우 continue 아래 코드는 실행하지 않고 반복문의 맨 위로 올라가 다시 반복문이 실행된다.

profile
방랑하는 개발자

0개의 댓글