• 검색 결과가 없습니다.

} 파이썬의 제어문

N/A
N/A
Protected

Academic year: 2021

Share "} 파이썬의 제어문"

Copied!
28
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

파이썬의 제어문

(2)

If 문

흔히들 하는 실수입니다.

파이썬은 중괄호({})가 아닌 들여 쓰기로 문장을 구분.

따라서 if문이 끝났을 경우 else가 등장할 때 if문과 동등한 위치에서 써주셔야 syntaxError가 나지 않 습니다!

} 정상!!

(3)

If 문 기본 구조

if <조건문>:

<수행할 문장1>

<수행할 문장2>

...

else:

<수행할 문장A>

<수행할 문장B>

...

파이썬은 왼쪽과 같이 문장을 들여 쓰기로 구분하기 때문에

<조건문, 제어문, 함수, 클래스>등은 해당 문법 안에서 들여쓰기를 사용 하여 구분해주어야 한다.

(4)

If 문 기본 구조 – cont’d

다음처럼 하면 에러!

if <조건문>:

<수행할 문장1>

<수행할 문장2>

<수행할 문장3>

if <조건문>

<수행할 문장1>

<수행할 문장2>

<수행할 문장3>

<수행할 문장2>가 들여쓰기가 되지 않음

if문 뒤에 :(colon)이 없음,

<수행할 문장3>의 들여쓰기 깊이가 다

•  파이썬 문법 구조 상

<if, for, def, class>

등의 문법에는 항상

‘:’ (colon)이 붙어야

•  다른 언어 같은 경우 한다.

이런 문법적 구분을

‘{‘, ‘}’의 기호로 감 싸서 구분하지만, 파 이썬은 들여쓰기로 해결한다.

(5)

If 문 조건문

•  조건문은 True/False를 판단하는 문장이다.

자료형 거짓

Boolean True False

숫자 3 0

문자열 "abc" ""

리스트 [1,2,3] []

터플 (1,2,3) () 딕셔너리 {"a":"b"} {}

(6)

If 문 비교연산자

•  조건판단을 하는 경우는 자료형보다는 비교 연산자 (<, >, ==, !=, >=, <=)를 쓰는 경우가 훨씬 많음

비교연산자 설명

x < y x가 y보다 작다 x > y x가 y보다 크다 x == y x와 y가 같다

x != y x와 y가 같지 않다 x >= y x가 y보다 크거나

같다

x <= y x가 y보다 작거나 같다

(7)

If 문 비교연산자 – cont’d

•  만약 3000원 이상의 돈을 가지고 있으면 택시를 타고 그렇지 않으면 걸어가라

(8)

If 문 and, or, not

•  또 다른 조건 판단에 쓰이는 것으로 and, or, not이란 것이 있음

연산자 설명

x or y x와 y 둘중에 하나만 참이면 참이다 x and y x와 y 모두 참이어야 참이다

not x x가 거짓이면 참이다

(9)

If 문 and, or, not – cont’d

•  돈이 3000원 이상 있거나 풀러줄 시계가 있다면 택 시를 타고 그렇지 않으면 걸어가라

money는 2000이지만 watch 가 1이기 때문에

money >= 3000 or watch 는 조건문이 참

(10)

If 문 x in s, x not in s

in not in

x in 리스트 x not in 리스트 x in 터플 x not in 터플 x in 문자열 x not in 문자열

(11)

If 문 x in s, x not in s – cont’d

•  [1, 2, 3]이라는 리스트 안에 1이 있는가?

•  [1, 2, 3]이라는 리스트 안에 1이 없는가?

(12)

If 문 x in s, x not in s – cont’d

•  ('a', 'b', 'c')이라는 터플 안에 ‘a’가 있는가?

•  ‘python’이라는 문자열 안에 ‘j’가 없는가?

(13)

If 문 x in s, x not in s – cont’d

•  만약 주머니에 돈이 있으면 택시를 타고, 없으면 걸 어가라

(14)

If 문 – elif (다중 조건 판단)

•  지갑에 돈이 있으면 택시를 타고, 지갑엔 돈이 없지만 시계가 있으면 택시를 타고, 돈도 없고 시계도 없

으면 걸어가라

(15)

If 문 elif (다중 조건 판단) 기본구조

if <조건문>:

<수행할 문장1>

<수행할 문장2>

...

elif <조건문>:

<수행할 문장1>

<수행할 문장2>

...

else:

<수행할 문장1>

<수행할 문장2>

(16)

If 문 pass의 사용

•  참 거짓에 따라 행동을 정의 할 때 아무런 일도 하지 않게끔 설정을 하고 싶을 때 사용.

•  지갑에 돈이 있으면 가만히 있고 지갑에 돈이 없으면 시계를 끌러라

If 문 다음문장인 pass가 수행되었고 아무런 결 과값도 보여주지 않는 것을 확인 할 수 있다.

(17)

While 문

while <조건문>:

<수행할 문장1>

<수행할 문장2>

<수행할 문장3>

...

•  “열 번 찍어 안 넘어 가는 나무 없다”

(18)

While 문 빠져 나가기 (break)

(19)

While 문 조건문으로 돌아가기(continue)

•  조건에 맞지 않는 경우 while문의 맨 처음(조건문) 으로 돌아가게 하고 싶을 경우 사용

* 1부터 10까지의 수 중 홀수만을 출력하는 예 * a가 짝수이면 continue 문장을 수행한다.

이 continue문은 while문의 맨 처음(조건문:

a<10)으로 돌아가게 하는 명령어 임.

(20)

While 문 무한루프(Loop)

while 1:

<수행할 문장1>

<수행할 문장2>

<수행할 문장3>

if <조건문>: break

(21)

For 문

•  리스트의 첫 번째 요소부터 마지막 요소까지 차례로 변수에 대입해서 <수행할 문장1>, <수행할 문장2>,…를 수행.

for 변수 in 리스트(또는 터플, 문자열, 딕셔너리):

<수행할 문장1>

<수행할 문장2>

...

(22)

For 문 – Example

•  총 5명의 학생이 시험을 보았는데 시험점수가 60점이 넘으면 합격이고 그렇지 않으면 불합격이다. 합격인지 불합격인지에 대한 결과를 보여준다.

(23)

For 문: continue

•  앞의 예제를 그대로 이용해서 60점 이상인 사람에게는 축하 메시지를 보내고 나머지 사람에게는 아무런 메시지도 전하지 않는 프로그램을 만들어 봅시다.

(24)

For 문: range 함수

•  숫자 리스트를 자동으로 만들어 줌

•  시작과 끝을 정해줄 수도 있습니다.

(25)

For 문: range 함수 – cont’d

•  앞서 살펴 보았던 60점 이상이면 합격인 예제도 range함수를 이용해서 적용시켜 봅시다.

(26)

For와 range를 이용하여 구구단 만들기

(27)

For 문: 딕셔너리

>>> dic = {1:1, 2:4, 3:9}

>>> for key in dic:

print ‘key=‘, key, ‘value=‘, dic[key]

key= 1 value= 1 key= 2 value= 4 key= 3 value= 9

(28)

다양한 for문의 사용

•  각각의 요소들이 자동으로 (first, last)라는 변수에 대입되게 됩니다.

참조

관련 문서

 재생에너지에 의존하는 전력공급시스템은 이론적, 계산적으로는 가능할 수 있으나, 상시적인 전력수급 불안과 막대한 비용을 유발 할 것임.. • 태양광, 풍력과

이름 그대로 Geometry(기하)와 Algebra(대수)의 합성어로 동적 기하 소프트웨어 (DGS;Dynamic Geometry Software)와 컴퓨터 대수 시스템(CAS;Computer Algebra

얼음이 녹으면서 생긴 흔적들로 그림을 그린 다음, 이것을 활용하여 장식물을 만들어 봅시다... 다음 글을 읽고,

이와 같은 적정기술 아이디어를 통해 태양광으로 배터리를 충전하여 사용하는 독서등과 자외선 살균등을 만들어

5.. 비행기 시간표의 스케줄을 짜는 데에 영향을 주는 것에는 무엇이 있을지 생각해 봅시다.. 이는 위의 여러 가지 제한 조건들이 만들어내는 공통 부분을 차 원을

4)우리가 직접 만든 일루미네이터를 광고할 수 있는 기회가 생겼어요! 각 조별로 자신이 만든 일루미네이터의 장점을 소개하는 신문광고 문구를 만들어 봅시다...

„ 모듈화 : 전체 프로그램의 복잡한 문제를 함수 내부의 문제로 국한시켜 프로그램을 체계적으로 쉽게 프로그래밍을 해나갈 수

실제로 팀 프로젝트를 수행하지 않는 경우라도 팀 프로젝트를 수행한다고 가정하고 4~5 명씩 팀을 이루어 작성하시오... •