for : 처음요소부터 마지막 요소까지 변수에 대입되며 같은 행동을 반복 해서 결과값을 얻을 수 있다.
코드
for waiting_no in [1,5,3,4] :
print("대기번호 : {0}".format(waiting_no))
결과값
대기번호 : 1
대기번호 : 5
대기번호 : 3
대기번호 : 4
※ print("대기번호 : "+ str(waiting_no)) → 위 print 문과 결과 값이 같다.
순차적인 숫자를 뽑고싶다면 range 를 쓴다.
코드
for waiting_no in range(1,6) :
print("대기번호 : {0}".format(waiting_no))
결과값
대기번호 : 1
대기번호 : 2
대기번호 : 3
대기번호 : 4
대기번호 : 5
◆ range : 시작값 ,끝값 + 1 : 순차적으로 증가하는 수의 범위를 지정해 주는 예약어
range를 쓸때는 괄호()를 쓴다... 헷갈령 ㅠㅠ
in 뒤에 문자열을 넣을 수도 있다. 아래 두개 코드의 결과 값은 같다.
코드
for customer in ["아이언맨" , "토르" , "아이엠 그루트"]:
print("{0}님 커피가 준비되었습니다".format(customer))
앞에서 배운 변수를 이용하면 추후 수정 할때 편할 듯 하다.
starbucks = ["아이언맨" , "토르" , "아이엠 그루트"]
for customer in starbucks:
print("{0}님 커피가 준비되었습니다".format(customer))
in 뒤에 사전을 넣을수도 있다. key 값을 뽑는다.
코드
starbucks = {3:"유재석" , 100:"김태호"}
for customer in starbucks:
print("{0}님 커피가 준비되었습니다".format(customer))
print(cabinet[3])
결과값
3님 커피가 준비되었습니다
100님 커피가 준비되었습니다
◆ enumerate : 리스트가 있는 경우 순서와 리스트의 값을 전달하는 기능을 가진다. 몇번째 값이 어떻게 들어오는지 봐야 할때 유용할듯 하다
코드
names = ["유재석","조세호","김종민"]
for i, name in enumerate(names):
print('{0}번:{1}'.format(i+1,name))
결과값
1번:유재석
2번:조세호
3번:김종민
for가 in 뒤에 쓰는 값(※ interable)을 다 쓸때까지 반복한다면 while은 조건이 만족할때까지 반복한다.
for는 처음부터 끝까지 하나씩 값을 뽑아 임시변수에 저장한 다음 코드 실행을 반복적으로 시행한다.
모든 값을 뽑기 때문에 총 실행횟수는 interable의 길이가 된다.
※ interable: member를 하나씩 차례로 반환 가능한 object(list,str,tuple등)를 말한다.
while : 어떤 조건이 만족할때까지 반복해라.
코드customer = "1" person = "Unknown"
while person != customer:
print("{0}번 고객님, 커피가 준비 되었습니다.".format(customer))
person = input("몇번이세요?")
① 안내방송을 하고
② 앞에 온 고객의 이름을 묻고 1번이 안오면 다시 반복,오면 반복해서 묻는내용이 종료되면서 while 문을 빠져나온다.
결과
for문은 도는 횟수가 정해져 있지만 while은 조건이 만족할때 까지 돈다!
응용
customer = "1"
person = "0"
while person != customer: ①
person = input("몇번이세요?") ②
if person == customer: ③
print("안녕히 가세요")
else:
if person == '': ④
print("주문하시겠어요?")
else: ⑤
print("음료가 준비중 입니다.")
① customer이 1일 아니라면 계속 루프 돈다
② 값을 받는다
③ 받은 값이 1이라면 음료를 주고 인사한다
④ 공백을 받았다면 주문할건지 물어본다.
⑤ 1도 아니고 0도 아닌 값을 받았다면 음료가 준비중이라고 안내한다.
실행결과
구문이 좀 더 부드러워졌다.
들여쓰기때문에 엄청 헷갈린다... 파이썬....ㅠㅠ
블로그에는 우클릭 방지가 걸려있어요. 코드복사는 카페에서 가능 합니다.
'코딩(개발) > 파이썬' 카테고리의 다른 글
파이썬 가변 인자 / 글로벌 변수 (0) | 2020.12.19 |
---|---|
파이썬 함수 기초 (0) | 2020.12.19 |
파이썬 if문 (0) | 2020.12.18 |
파이썬 주석 파이썬 변수 (0) | 2020.12.17 |
파이썬 기초 (0) | 2020.12.17 |
댓글