일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바독학
- 연어요리
- 자바의정석
- 직장인도시락메뉴추천
- 아이패드강좌
- 저녁메뉴추천
- 개발자독학
- Python
- 나도코딩
- 파이썬공부
- 개발자
- 파이썬변수
- 아이들간식메뉴추천
- java
- 파이썬독학
- 파이썬포맷
- 파이썬기초
- 파이썬공부학
- 프로크리에이트강좌
- 파이썬출력
- 연어요리레시피
- 홈파티음식
- 파이썬공부하기
- 파이썬파일
- 프로크리에이트기능
- 아이들간식메뉴
- 초간단샌드위치
- 자바공부하기
- 파이썬
- 샌드위치레시피
Archives
- Today
- Total
EGGRAN
[ 파이썬 공부 기록 7 ] 파이썬 독학 / 파이썬 반복문에 대하여 알아보기 for, while 본문
반응형
1. for 반복문
- 동일한 명령어 반복 처리하고싶을 때사용
- in 뒤에 있는 리스트 원소 숫자만큼 반복
for num in [0,1,2,3,4]: #원소 0,1,2,3,4 가 num에 하나씩 할당됨
print("대기번호 : {0}".format(num))
<결과>
대기번호 : 0
대기번호 : 1
대기번호 : 2
대기번호 : 3
대기번호 : 4
for num in range(5): #범위가 0~5미만
print("대기번호 : {0}".format(num))
<결과>
대기번호 : 0
대기번호 : 1
대기번호 : 2
대기번호 : 3
대기번호 : 4
for num in range(1,5): #범위가 1~5미만
print("대기번호 : {0}".format(num))
<결과>
대기번호 : 1
대기번호 : 2
대기번호 : 3
대기번호 : 4
ㅇㅇ
cafe = ["장원영","안유진","리즈","이서","가을","레이"]
for customer in cafe:
print("{0}님의 커피 나왔습니다.".format(customer))
<결과>
장원영님의 커피 나왔습니다.
안유진님의 커피 나왔습니다.
리즈님의 커피 나왔습니다.
이서님의 커피 나왔습니다.
가을님의 커피 나왔습니다.
레이님의 커피 나왔습니다.
aspa = ["카리나","윈터","닝닝","지젤"]
for member in aspa :
print("{0}는(은) 에스파의 멤버입니다".format(member))
<결과>
카리나는(은) 에스파의 멤버입니다
윈터는(은) 에스파의 멤버입니다
닝닝는(은) 에스파의 멤버입니다
지젤는(은) 에스파의 멤버입니다
#리스트 안에 있는 원소에 100을 더하기
student =[1,2,3,4,5]
student =[ i+100 for i in student ]
print(student)
<결과>
[101, 102, 103, 104, 105]
#리스트 안에 원소 갯수 세기
list = ["가나다라","ABCDEFG","안녕하슈"]
list = [len(i) for i in list]
print(list)
<결과>
[4, 7, 4]
#리스트 안에 있는 소문자원소 대문자로 바꾸기
blackpink = ["jeny","rose","lisa","jisu"]
blackpink = [i.upper() for i in blackpink]
print (blackpink)
<결과>
['JENY', 'ROSE', 'LISA', 'JISU']
2. while 반복문
- for반목문은 반복할 원소갯수만큼 한정되지만
- while 반복문은 조건식이 참인경우 무한반복 , 거짓이 되면 반복문 종료
# #알람이 5번 울린다. 5번이 지나면 물벼락을 맞는다.
index = 1
while index <=5 : #index 값이 5이하일 때까지만 반복
print("알람이 {0}번 울렸습니다".format(index))
index+=1 #index값 1씩 증가
if index==6:
print("알람이 {0}번 울렸습니다. 물벼락이 떨어집니다!".format(index))
<결과>
알람이 1번 울렸습니다
알람이 2번 울렸습니다
알람이 3번 울렸습니다
알람이 4번 울렸습니다
알람이 5번 울렸습니다
알람이 6번 울렸습니다. 물벼락이 떨어집니다!
# 안보현의 커피가 나와서 손님을 불렀다. 안보현이 맞으면 커피를 드리고
# 안보현이 아니면 안보현을 다시 부른다
customer = "안보현"
person = "Unknown"
while person != customer:
print("{0}님 주문하신 커피 나왔습니다!".format(customer))
person = input("이름이 어떻게 되세요?")
if person == customer :
print("{0}님 커피 맛있게드세요~".format(person))
else:
print("이건 안보현님 커피입니다! {0}님은 잠시 기다려주세요~\n".format(person))
<결과>
안보현님 주문하신 커피 나왔습니다!
이름이 어떻게 되세요?정해인 #정해인은 내가 입력한 값
이건 안보현님 커피입니다! 정해인님은 잠시 기다려주세요~ #안보현이 아니여서 다시반복
안보현님 주문하신 커피 나왔습니다!
이름이 어떻게 되세요?이준호 #이준호는 내가 입력한 값
이건 안보현님 커피입니다! 이준호님은 잠시 기다려주세요~ #안보현이 아니여서 다시반복
안보현님 주문하신 커피 나왔습니다!
이름이 어떻게 되세요?안보현 #안보현은 내가 입력한 값
안보현님 커피 맛있게드세요~ #값 일치로 반복문 종료
3. continu
- continu는 건너뛰고 다음 코드실행
# 1학년 1반에는 10명의 학생이 있는데 그 중 3, 5번 학생이 오늘 결석을 하였다.
# 3번 5번 학생을 빼고 출석을 불러야하는 상황
absent = [3,5] #결석한 학생
for student in range(1,11): #학생으 1~10번까지 있고 student에 원소를 할당, 그 갯수만큼 반복문 실행
if student in absent: #조건이 student 원소가 absent에 포함되면 continue 한다.
continue
print("{0}번 출석완료".format(student))
<결과>
1번 출석완료
2번 출석완료
4번 출석완료
6번 출석완료
7번 출석완료
8번 출석완료
9번 출석완료
10번 출석완료
4. break
- 반복문을 종료시키는 명령
# 1~10까지의 숫자가 있는데 num 변수 값이 5가되면 프로그램 종료
num = 0
for num in range(1,11):
print(num)
if num == 5:
break
num+=1
<결과>
1
2
3
4
5
#무한루프에서 num이 10이되면 종료
num = 0
while True:
print(num)
if num == 10:
break
num+=1
<결과>
0
1
2
3
4
5
6
7
8
9
10
5. 응용문제
#Quiz) 당신은 cocoa 서비스를 이용하는 택시기사입니다.
#50명의 승객과 매칭기회가 있을 때, 총 탑승 승객 수를 구하는 프로그램을 작성하시오.
#조건1: 승객별 운행소요시간은 5~50분 사이의 난수로 정해짐
#조건2: 당신은 소요시간 5분~15분 사이의 승객만 매칭해야합니다
#출력문 예제
# [o] 1번째 손님 (소요시간 : 50분)
# [ ] 2번쨰 손님 (소요시간 : 14분)
# [o] 3번쨰 손님 (소요시간 : 11분)
# ...
# [ ] 50번쨰 손님(소요시간 : 20분)
# 총 탑승 승객 : 2분
#for
from random import *
count =0
for customer in range(1,51):
time = randrange(5,50)
if 5<=time<=15:
print("[O] {0}번째 손님 (소요시간 : {1})".format(customer,time))
count+=1
else :
print("[ ] {0}번째 손님 (소요시간 : {1})".format(customer,time))
print("총 탑승 승객 : {0}분".format(count))
#while
from random import*
count=0
customer=0
while 50>=customer :
time=randint(5,50)
customer+=1
if 5 <= time <=15 :
print("[O] {0}번쨰 손님 (소요 시간 : {1}".format(customer,time))
count+=1
else :
print ("[ ] {0}번쨰 손님 (소요 시간 : {1}".format(customer,time))
print(count)
반응형