for문은 특정 작업을 반복해준다.
#리스트 내에 있는 요소가 전부 출력될 때까지 반복
for waitingNo in [1, 2, 3 ,4, 5]: #1~5
print(str(waitingNo)+'번 손님~')
#범위를 정하고 요소가 전부 출력될 때까지 반복
for waitingNo in range(1, 6): #마찬가지로 1~5. 죽어도 0번부터 시작하진 않겠다.
print('{0}번 손님~'.format(waitingNo)) #이렇게도 표현 가능.
#카페로 나들이 온 동물들
animal = ['여우', '강아지', '고양이']
for customer in animal:
print('{0}님, 주문하신 음료 나왔습니다.'. format(customer)) #format(animal)이 되어버리면 리스트내용 전체가 세 번 반복된다.
#한 줄 for문은 결괏값도 한 줄.
animal = ['fox', 'puppy', 'kitten']
animal = [len(i) for i in animal] #동물 이름의 영문 스펠링 개수를 세어주는 for문
animal = [i.upper() for i in animal]
while문은 원하는 값이 전달될 때까지 작업을 무한반복해준다.
animal = '여우'
#무한반복의 예시
while True:
print('{}님, 주문하신 음료 나왔습니다.'.format(animal))
#으악 멈추고 싶으면 ctrl + c를 누르면 된다...
#원하는 값이 전달되기 전까지 반복하기
customer = 'Who'
while animal != customer #animal과 customer가 다를 시 반복.
print('{}님, 주문하신 음료 나왔습니다.'.format(animal))
customer = input('고객님, 성함이 어떻게 되세요? ') #원하는 값인 여우를 입력받기 전까지 반복
continue & break
continue는 예외사항을 지정해두고, 예외사항에 직면했을 경우 스킵하고 다음으로 넘어가게 한다.
break는 예외사항에 직면했을 경우 반복을 즉시 멈추게 한다.
#전쟁터에 총을 안 가지고 오면 어떡하냐는 말을 입에 달고 사는 선생님의 수업이다.
absent = [2, 5] #예외사항1. 결석
noBook = [7] #예외사항2. 교재 없음
for student in range(1, 11): #1번에서 10번까지의 학생들
if student in absent:
continue #결석했으니 나오지 않는 2와 5
elif student in noBook:
print('{}는 책이 없니?'.format(student)) #소름
print('하... 오늘 수업 여기까지. {}는 교무실로 따라와'.format(student)) #히익
break #반복문 탈출
print('{}, 본문 읽어봐'.format(student))
반복문과 난수를 이용해서 적당히 만들어 본 50% 강화 시뮬레이터
from random import *
res = 0 #총 강화
for i in range(1,11): #10번 반복
sf = randrange(0,2) #0과 1의 범위
if sf == 1: #1이면 성공
print('축하합니다! 강화에 성공하셨습니다.') #성공문구
res += 1
else: #다른 것(0)이 나오면 실패
print('저런... 강화에 실패하셨습니다.') #실패 문구
print('얼음 스태프 +{}가 완성되었습니다.'.format(res)) #강화 결과
댓글