반응형
5. 제어문
5.1 들여쓰기와 제어문
5.1.1 파이썬은 들여쓰기를 강제하여 코드의 가독성을 높인다.
5.1.2 블록 내부에 있는 문장들은 반드시 들여쓰기가 일치해야 한다.
if a > 1:
print 'a'
print 'b' # 에러
5.1.3 블록의 시작은 콜론(:)이며 블록의 끝은 들여쓰기가 끝나는 부분으로 처리된다. - python에는 { }, begin, end 등의 키워드가 존재하지 않는다.
5.1.4 들여쓰기를 할 때에는 탭과 공백을 섞어 쓰지 않는다.
5.2 조건문(if)
if 조건식1:
statements
elif 조건식2:
statements
elif 조건식3:
statements
else
statements
조건식이나 else 다음에 콜론(:) 표기 필요
들여쓰기(indentation)를 잘 지켜야 함
switch 문은 없음
실행할 코드가 없는 경우 pass
if not a:
pass
5.3 반복문
5.3.1 for
for <타켓> in <컨테이너 객체>:
statements
else:
statements
5.3.2 for 루프의 중첩
for x in range(2, 10):
print("=== {0}단 ===".format(x))
for y in range(1, 10):
print("{0} x {1} = {2:2d}".format(x, y, x * y))
# 빈 라인 출력
print()
5.3.3 while 조건식이 만족하는 동안 while 블록내의 문장들을 반복 수행한다.
count = 1
while count < 11:
print(count)
count = count + 1
else:
print('else block')
5.4 실습문제
if Statements
color = input('색상을 입력하세요: ')
if color == 'blue':
print('건너가세요.')
else:
print('기다리세요.')
num = 100
# 조건문 다음에 콜론(:)
# 탭을 쓰거나 공백 4개를 쓴다.
if num % 2 == 0:
print("짝수입니다")
else:
print("홀수입니다")
# 들여쓰기를 하지 않으면 에러 발생
money = 10000
if money:
print("택시를")
print("타고")
print("간다.")
elif
color = input('색상을 입력하세요: ')
if color == 'blue':
print('건너가세요.')
elif color == 'red':
print('기다리세요.')
else:
print('잘못된 색상입니다.')
numbers = [1, 2, 3, 4, 5];
for i in number:
print(i)
The range() function
# 0부터 9
a = range(10)
print(type(a))
print(a)
# 리스트로 저장
a = list(range(10))
print(a)
# range(start, end - 1)
a = range(1, 11)
print(a)
# range(start, end - 1, step)
a = list(range(1, 11, 2))
print(a)
sum = 0
for i in range(1, 11):
sum += i
print(sum)
# 다중 for 문
# 2 ~ 4단
for x in range(2, 5):
print("=== {0}단 ===".format(x))
for y in range(1, 10):
print("{0} x {1} = {2:2d}".format(x, y, x * y))
# 빈 라인 출력
print()
리스트의 요소가 튜플인 경우
# 리스트의 요소가 튜플인 경우
a = [(1, 2), (3, 4), (5, 6)]
for (first, last) in a:
print("{0} + {1} = {2}".format(first, last, first + last))
points = [90, 25, 67, 45, 80]
number = 0
for point in points:
number = number + 1
result = ""
if point >= 60:
result = "합격"
else:
result = "불합격"
print("%d번 학생: %d점, %s입니다." % (number, point, result))
# 딕셔너리 내부에 for 반복문 사용
a = { x: x ** 2 for x in (2, 4, 6) }
print(a)
break 예제
# break 예제
# 커피 자판기 예제
coffee = 10
money = 30000
while money:
print("커피를 드립니다.")
coffee = coffee - 1
money = money - 3000
print("남은 커피는 %d개이고 잔액은 %d원입니다.\n" % (coffee, money))
if not coffee:
print("커피가 다 떨어졌습니다. 판매를 중지합니다.")
break
continue
a = 0
while a < 10:
# a = a + 1
a += 1
if a % 2 == 0:
continue
print(a)
break
a = 0
while a < 10:
# a = a + 1
a += 1
if a % 2 == 0:
break
print(a)
무한 루프
# 무한 루프
while True:
s = input('내용을 입력하세요(종료하려면 x 버튼을 누르세요): ')
if s == 'x':
break
while 1:
# 0 False, 0이 아니면 True
while 1:
# dan = eval(input('단을 입력하세요(종료하려면 0을 입력하세요): '))
dan = int(input('단을 입력하세요(종료하려면 0을 입력하세요): '))
if dan == 0:
break
for n in range(1, 10):
print(dan, 'x', n, '=', dan * n)
반응형