*나도코딩님 강의를 듣고 복습의 의미로 작성하였습니다. 실제 강의 내용이나 예제와 다를 수 있습니다.
제어문
1. if문
- if문의 기본 구조
weather = input("오늘 날씨는 어때요?")
if weather == "비":
print("우산을 챙기세요")
elif weather == "미세먼지":
print("마스크를 챙기세요")
else:
print("준비물 필요 없어요")
- 비교 연산자
temp = int(input("기온은 어때요? "))
if 30 <= temp:
print("너무 더워요. 나가지 마세요.")
elif 10 <= temp and temp < 30:
print("괜찮은 날씨예요.")
elif 0 <= temp < 10:
print("외투를 챙기세요.")
else:
print("너무 추워요. 나가지 마세요.")
2. for문
- for문이 없었다면?
print("대기번호 : 1")
print("대기번호 : 2")
print("대기번호 : 3")
print("대기번호 : 4")
- for문 기본구조
for wating_no in [0, 1, 2, 3, 4]"
print ("대기번호 : {0}".format(wating_no))
- range 함수 응용하기
for wating_no in range(5):
print("대기번호 : {0}".format(wating_no))
for wating_no in range(1, 6):
print("대기번호 : {0}".format(wating_no))
- for문 응용
starbucks = ["카리나", "윈터", "지젤", "닝닝"]
for customer in starbucks:
print("{0} 고객님, 커피가 준비되었습니다." .format(customer))
3. while 문
customer = "지젤"
index = 5
while index >= 1:
print("{0}, 커피가 준비 되었습니다. {1} 번 남았어요.".format(customer, index))
index -= 1
if index == 0:
print("커피는 폐기처분되었습니다.")
조건문 index -= 1을 통해 실행하면서 문장을 출력하다가 index값이 0이 되면 "커피는 폐기처분되었습니다" 문장을 출력한다. 그러고 나면 index >= 1이 거짓이 되므로 while문을 빠져나간다.
customer = "윈터"
person = "Unknown"
while person != customer :
print("{0}, 커피가 준비 되었습니다.".format(customer))
person = input("이름이 어떻게 되세요?")
조건문 person != customer를 이용하여 입력값이 "윈터"가 아니면 while문을 반복하고, "윈터"를 입력하면 while문을 빠져나간다
- 처음으로 돌아가는 continue와 강제로 빠져나가는 break
customer = "카리나"
index = 1
while True:
print("{0}, 커피가 준비 되었습니다. 호출 {1} 회" .format(customer, index))
index += 1
계속 1씩 증가하는 조건문이 항상 참이기 때문에 무한루프에 빠진다.
absent = [2, 5] # 결석한 학생
no_book = [9] # 책을 가져오지 않은 학생
for student in range(1, 11):
if student in absent:
continue
elif student in no_book:
print("오늘 수업 여기까지. {0}는 교무실로 따라와".format(student))
break
print("{0}, 책을 읽어봐".format(student))
continue를 만나면 제어문의 처음으로 돌아가고 break를 만나면 그대로 제어문을 강제로 종료한다.
4. 한 줄 for
- 출석번호 students 앞에 100을 붙이기
students = [1,2,3,4,5]
print(students)
students = [i+100 for i in students]
print(students)
- 학생 이름을 길이로 변환
students = ["karina", "ningning", "winter", "gigle"]
students = [len(i) for i in students]
print(students)
- 학생 이름을 대문자로 변환
대문자로 변환
students = ["karina", "ningning", "winter", "gigle"]
students = [i.upper() for i in students]
print(students)
Quiz. 50명의 택시 승객과 매칭 기회가 있을 때, 총 탑승 승객 수를 구하는 프로그램을 작성하시오
조건 1. 승객별 운행 소요 시간은 5분 ~ 50분 사이의 난수로 정해짐 조건 2. 소요 시간 5분 ~ 15분 사이의 승객만 매칭하기 |
<출력문 예> [O] 1번째 손님 (소요시간 : 15분) [ ] 2번째 손님 (소요시간 : 50분) [O] 3번째 손님 (소요시간 : 5분) . . . [ ] 50번째 손님 (소요시간 : 16분) 총 탑승 승객 : 2 분 |
더보기
for random import *
cnt = 0
for i in range(1, 51):
time = randrange(5, 51)
if 5 <= time < 16:
print("[O] {0}번째 손님 (소요시간 : {1}분)".format(i, time))
cnt += 1
else:
print("[ ] {0}번째 손님 (소요시간 : {1}분)".format(i, time))
print("총 탑승 승객 : {0}분".format(cnt))
'add 깨알 공부' 카테고리의 다른 글
플랜 (3) | 2024.11.07 |
---|---|
Python - 함수 (0) | 2021.07.05 |
Python 기초 - 자료구조(리스트, 사전, 튜플, 집합, 자료구조의 변경) (0) | 2021.06.02 |
Python 기초 - 절대값 함수, 랜덤함수, 슬라이싱, 문자열처리함수, 문자열포맷, 탈출문자 (0) | 2021.06.02 |
댓글