SW.AI 트랙/python

[Python] 파이썬 기초. if/for/while 활용

AI 봇 2022. 12. 28. 15:49

본 문서는 나도코딩(유뷰트 영상) 자료를 스터디하며 정리한 내용입니다. (출처 : 유튜브 <나도코딩>)

 


  • if
  • for
  • while

제어문 if. elif. else 

 

if문은 다른 조건일 경우 다른 결과를 실행할 때 사용합니다.

weather = "맑아요"
if weather == "비":
	print("우산을 챙기세요")
elif weather == "미세먼지":
	print("마스크를 챙기세요")
else:
	print("준비물이 필요 없어요")

 

사용자 입력 값을 받고 싶을 때는  input( ) 을 사용합니다.

weather = input("오늘 날씨는 어때요? ")
if weather == "비":
	print("우산을 챙기세요")
elif weather == "미세먼지":
	print("마스크를 챙기세요")
else:
	print("준비물이 필요 없어요")

 

코드를 실행하면 오늘 날씨는 어때요? 질문이 나오고 입력창이 보이게 됩니다.

입력창에 비를 입력하면 우산을 챙기세요 가 출력되고, 미세먼지를 입력하면 마스크를 챙기세요가 출력됩니다.

아무것도 입력하지 않으면 준비물이 필요 없어요가 출력됩니다.

 

input( ) 으로 입력받은 값은 문자열로 인식됩니다.  따라서 입력값이 숫자인 경우에는 int( ) 를 사용해서 문자열을 숫자로 바꿔야 합니다.

temp = int(input("기온이 몇 도인가요? "))
if temp >= 30:
	print("너무 더워요. 나가지 마세요") 
elif temp >= 10 and temp < 30:
    print("날씨가 좋네요.")
elif 0 <= temp and temp < 10:  # and 를 사용하지 않는다면 0 <= temp < 10 이로 표현해도 됨
    print("외투를 챙기세요")
else:
    print("너무 추워요. 밖에 나가지 마세요요")

 

 

 

반복문 for

 

대기번호 : 1 를 4번까지 출력해 봅시다

print("대기번호 : 1")
print("대기번호 : 2")
print("대기번호 : 3")
print("대기번호 : 4")
.
.

 

위 코딩을 for 문을 사용해서 줄일 수 있습니다.  in [   ]

여러번 반복해야 하는 문장을 한번에 처리할 수 있습니다.

for waiting_no in [0, 1, 2, 3, 4]
	print("대기번호 : {0}".format(waiting_no))

 

range( ) 사용할 수도 있어요. in range( )

for waiting_no in range(5):   # range(5) 는 [0, 1, 2, 3, 4]를 의미해요
	print("대기번호 : {0}".format(waiting_no))

 

0번째 부터 출력되는 것이 아니라, 대기번호 : 1 부터 출력하고 싶다면.  in range(  :  )

for waiting_no in range(1, 6):   # range(1:6) 는 [1, 2, 3, 4, 5]를 의미해요
	print("대기번호 : {0}".format(waiting_no))

 

예제 1. 스타벅스에 온 손님을 호출하는 문장을 출력하기

starbucks = ["아이언맨", "토르", "그루프"]
for customer in starbucks:
	print("{0} 손님, 커피가 준비되었습니다.".format(customer))

 

 

while 문

 

예제 2. 스타벅스에 온 손님을 5번까지 호출하고 손님이 나타나지 않으면 폐기하는 문장을 출력하기

customer = "토르"
index = 5
while index >= 1:
    print("{0} 손님. 커피가 준비되었습니다. {1}번 남았습니다.".format(customer, index))
    index -= 1   # index를 1 씩 줄입니다.
    if index == 0:
        print("커피를 폐기했습니다.")

 

예제 3. 스타벅스에서 손님이 나올 때 까지 부르는 경우, 출력하기

무한 루프에 빠지게 됩니다.

customer = "토르"
index = 1
while True:
    index += 1
    print("{0} 손님. 커피가 준비되었습니다. 호출 {1}회".format(customer, index))

 

예제 4.  종업원이 손님의 이름을 물어보고 토르가 아닌 경우 계속 물어보는 경우, 출력하기

customer = "토르"
person = "unknown"
while person != customer:   # 조건이 맞을 때까지 계속 반복함
    print("{0} 손님. 커피가 준비되었습니다.".format(customer))
    person = input("이름이 어떻게 되세요? ")