[python][파이썬 조건문(if-elif-else)]

2.2 조건문(if-elif-else)

지금까지 저와 함께 파이썬을 알아가면서 어떤 생각이 드셨나요? 너무 쉽다는 분도 계실테고, 이런 것들 배워서 어디에 써먹는 건지 궁금한 분도 계실 것 같네요.

이 강의는 프로그래밍을 전혀 모르는 분을 위해 최대한 쉽게 쓰려고했기 때문에 다른 언어를 접해보신 분에게는 지루할 것 같네요. 그런 분이라면 아마 여기까지 읽기 전에 다른 사이트를 찾아가셨겠죠?

또, 파이썬을 배워서 어디에 써먹느냐고 하신다면… 프로그램 만드는 데 쓰지요. 웹사이트를 구축하는데도 씁니다. 지금 배우는 것과 같은 하찮은 것들이 모여서 엄청난 프로그램도 만들어 내는 것이지요. 조그만 레고 블록들이 모여서 큰 모형을 이루는 것과 같습니다. 차근차근 공부해가다보면 점점 더 복잡한 프로그램을 만드실 수 있을 거예요.

그럼 또 새로운 것을 배워 볼까요? 이번엔 if 문입니다. If는 '만약 …이면'이라는 뜻이지요? 파이썬에서도 같은 의미로 사용됩니다.

"달면 삼키고 쓰면 뱉는다."는 속담이 있지요. 그것을 파이썬에서는 쓰는 것과 비슷하게 써보겠습니다.

만약 달다면:
    삼킨다.
그렇지 않으면:
    뱉는다.

이번엔 영어를 조금 섞어서 써볼까요?

if 달다면:
    삼킨다.
else:
    뱉는다.

위에 든 예들은 설명을 위해서 써 본거구요, 그대로 작성하면 파이썬이 이해를 못합니다.

파이썬의 if와 else

그럼 이번엔 실습을 해보겠습니다. 아래의 두 수 a와 b 중에 어느 쪽이 더 클까요?

>>> a = 1234 * 4
>>> b = 13456 / 2

if 문을 사용해서 a가 크면 'a'를 출력하고 b가 크면 'b'를 출력하도록 프로그램을 작성해 볼까요? 한번 따라서 쳐보세요.

>>> if a > b:                     # 만약 a가 b보다 크면
...     print('a')                # 'a'를 출력한다.
... else:                         # 그렇지 않으면
...     print('b')                # 'b'를 출력한다.
... 

# 이후에 있는 것들은 주석(설명)이므로 입력하지 않아도 됩니다. a > b 라고 쓴 것은 'a가 b보다 큰가?'를 나타냅니다. 어렵지 않죠?

elif

조건을 여러 개 주는 것도 가능합니다. 이번엔 c와 d를 비교해 보겠습니다.

>>> c = 15 * 5
>>> d = 15 + 15 + 15 + 15 + 15
>>> if c > d:
...     print('c is greater than d')
... elif c == d:
...     print('c is equal to d')
... elif c < d:
...     print('c is less than d')
... else:
...     print('I don\'t know')
... 
c is equal to d

이렇게 elif라는 것을 사용하면 여러 개의 조건을 검사해서 그 중에서 맘에 드는 것을 고를 수 가 있답니다.

== 연산자

여기서 새로운 것이 또 있는데, 바로 ==(등호 두 개)입니다. ==는 지금까지 알고 있던 =(등호 한 개)와는 쓰임새가 다르니 혼동하지 않도록 주의하세요. c == d라고 쓰면 'c와 d의 값이 같은가?'를 나타냅니다. 지금처럼 두 값을 비교할 때 사용하지요. 지금까지 등호 하나를 써서 c = d라고 쓴 것은 d의 값을 c에 넣으라는 뜻이었구요.

>>> watch = 1000000

기억나시죠? 이제 그 둘을 구별하실 수 있겠죠?

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

나머지 계산을 이용하는 if 문

어떤 수를 다른 수로 나눈 나머지가 0이면 '나누어 떨어진다'고 합니다. 예를 들어, 48을 4로 나눈 나머지는 0이므로, 48은 4로 나누어 떨어집니다.

>>> 48 % 4
0

어떤 수 a가 다른 수 b로 나누어 떨어지는지를 파이썬의 if 문으로 다음과 같이 평가할 수 있습니다.

>>> a = 48
>>> b = 4
>>> if a % b == 0:
...     print(f'{a}는 {b}로 나누어 떨어집니다.')
... elif a % b != 0:
...     print(f'{a}는 {b}로 나누어 떨어지지 않습니다.')
...
484로 나누어 떨어집니다.

위의 예에서 elif a % b != 0: 대신 else:라고 해도 결과는 같겠죠?

조건에 따라 반복문 중단하기

어릴 때는 큰 수를 잘 이해하지 못하죠?

하나부터 열까지밖에 모르는 아이처럼, 10보다 큰 숫자가 들어오면 멈추는 반복문을 작성해볼까요?

# filename: ten.py

max = 10

while True:
    num = int(input())
    if num > max:
        print(num, 'is too big!')
        break

이와 같이 반복문에서 break를 사용하면 빠져나올 수 있답니다.

입력:

3
6
9
12

출력:

12 is too big!

오늘의 강의는 여기까지입니다. 강의는 이해가 된다고 해서 그냥 훑어보지 마시고 꼭 예제를 따라서 쳐보시기 바랍니다. 그리고 그것과 비슷한 프로그램을 스스로 만들어 보시구요. '백타가 불여일작'이라는 말도 있거든요.

백 번 따라해보는 것보다 한 번 직접 만들어 보는 것이 낫다

끝…

 
[출처] https://wikidocs.net/57

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
371 [python][image processing][파이썬][이미지프로세싱] 파이썬 영상 처리 (OpenCV) file 졸리운_곰 2021.11.12 29
370 [python] Python Console Input & Output Tutorial 졸리운_곰 2021.11.06 20
369 [Python 데이터분석] [pandas] 공공데이터(csv) 활용시 한글 깨짐 현상 해결 file 졸리운_곰 2021.09.30 13
368 [Python 데이터분석] 공공데이터포털::공휴일 데이터 조회 (REST API) file 졸리운_곰 2021.09.30 54
367 [Python 데이터 분석] pandas의 to_csv()를 사용해서 csv 파일로 저장하기(save 하기) 졸리운_곰 2021.09.29 16
366 [Python 데이터 분석] 데이터 과학을 단순하게 만드는 3가지 Python 패키지 file 졸리운_곰 2021.09.24 48
365 [Python][Dash] DASH PLOTLY 설치부터 튜토리얼까지 졸리운_곰 2021.09.11 68
364 python - 국가공휴일 데이터 가져오기 (data.go.kr) file 졸리운_곰 2021.09.05 34
363 [python][web] Separate Front-end from Back-end with Flask+AJAX file 졸리운_곰 2021.08.13 11
» [python][파이썬 조건문(if-elif-else)] 졸리운_곰 2021.07.24 26
361 [python] 파이썬 for 문 졸리운_곰 2021.07.24 19
360 [python][파이썬 기초] 48 파이썬으로 파일 만들기 졸리운_곰 2021.07.24 30
359 [Python] UnicodeEncodeError: 'ascii' codec can't encode file 졸리운_곰 2021.07.24 36
358 [python] *args 와 **kwargs 사용하기 - 슬기로운 파이썬 트릭 中 file 졸리운_곰 2021.07.24 39
357 [python] *args 와 **kwargs 졸리운_곰 2021.07.24 18
356 [python] 파이썬 f-string (파이썬 스트링 앞에 f') file 졸리운_곰 2021.07.17 42
355 [Python] 파이썬으로 복리 계산하기 file 졸리운_곰 2021.07.17 46
354 [python, 파이썬] 연습 문제: 복리 이자 계산 졸리운_곰 2021.07.17 599
353 python - 읽은 후 kafka 메시지를 삭제하는 방법 졸리운_곰 2021.07.13 326
352 [scrapy] https://pypi.org/project/scrapy-save-as-pdf/ 졸리운_곰 2021.07.03 75
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED