2. while
기본형식)
while 조건문:
수행문장1
수행문장2
.....
조건문이 참(True)인 경우에 블록에 속한 수행문장들 반복하여 실행
함께 사용하는 기타 제어문 : break, continue
횟수로 반복을 해야하는 경우(시퀀스) : for
횟수가 아닌 조건에 따라 반복하는 경우 : while
while문으로 무한루프 만들기
형식) while True:
수행문장....
if 종료조건문:
break
# 파이썬은 증감연산자(++, --)가 없다!
cnt = 0
while cnt < 10:
print(cnt)
cnt += 1
# 메뉴
menu = '''
1. 입력
2. 출력
3. 수정
4. 삭제
0. 종료
-----------'''
menu_num = -1
# while menu_num != 0:
# print(menu)
# menu_num = int(input('선택> '))
# if menu_num == 0:
# print('종료합니다.')
while True:
print(menu)
menu_num = int(input('선택> '))
if menu_num == 0:
print('종료합니다.')
break
elif menu_num < 0 or menu_num >= 4:
print('0 ~ 4까지만 입력하세요.')
continue
if menu_num == 1:
print('입력하세요')
elif menu_num == 2:
print('출력합니다.')
elif menu_num == 3:
print('수정합니다.')
elif menu_num == 4:
print('삭제합니다.')
* 구구단 짜기
# 구구단을 출력하는 프로그램 - while 버전
# 단 수를 입력 받아서 출력하는 프로그램을 작성하시오.
# n = int(input('숫자 입력 : '))
# cnt = 1
# print(n, '단')
# while cnt < 10:
# print( n, '*', cnt, '=', n * cnt )
# cnt += 1
d = int(input('단 입력 : '))
i = 0
while i < 9:
i += 1
print('{} * {} = {:2}'.format(d, i, d * i))
3. for
기본형식)
for 변수 in 시퀀스:
수행문장.....
시퀀스 유형의 개수만큼 수행문장을 반복
단순히 횟수를 반복시킬 경우 range(수치)를 활용
for i in range(10): -> 0부터 9까지 10번 반복
=> for(int i = 0; i <10; i++)과 동일
연구문제) 모든 구구단을 출력하시요. (가로로)
4. match, case - switch, case와 동일한 제어문
파이썬 3.10 버전부터 추가됨.
형식) match 수식:
case 값1:
수행문장1
case 값2:
수행문장2
case _ :
수행문장3
'case_: ' 그 외 나머지 경우의 처리(default)
수식에 튜플을 사용하는 형식)
match (식1, 식2):
case (값1-1, 값2-1):
수행문장
case (값1-2, 값2-1):
수행문장
case (값1-1, 값2-2 ):
수행문장
case (값1-2, 값2-2):
수행문장
case (값1-1, _): 식1의 결과만으로 선택
수행문장
case(_, 값2): 식 2의 결과만으로 선택
수행문장
# for i in range(10):
# print(i, end=" ")
# print("") # 줄바꿈
# scores = [80, 75, 98, 88, 100]
# sum = 0
# for s in scores:
# sum += s
#print('총점 : ' + str(sum))
#print('총점 :', sum) 한 문장이 아니라 결합
#print('총점 : %d' %(sum))
print('총점 : {}'.format(sum))
# ss = 0
# for i in range(5, 20):
# ss += i
# print(ss)
# n = int(input('단 입력 : '))
# print(n,"단")
# for x in range(1, 10):
# print('{} * {} = {:2}'.format(n, x, n * x))
# 연구문제) 모든 구구단을 출력하시오. (가로로)
for n2 in range(1, 10):
for n1 in range(2, 10):
print('{} * {} = {:2}'.format(n1,n2,n1*n2), end="\t")
print()
ValueError: invalid literal for int() with base 10
'공부기록 > Python' 카테고리의 다른 글
6월 12일 (2) python - 모듈 (0) | 2023.06.12 |
---|---|
6월 12일 (1) python - 함수 (1) | 2023.06.12 |
6월 9일 (1) python - 데이터 유형2, 연산자, 제어문 (0) | 2023.06.09 |
6월 8일 (2) python - 데이터 유형 (0) | 2023.06.08 |
6월 8일 (1) python - 설치, 문법 (0) | 2023.06.08 |