728x90
** for / while 사용
- for: 구하고자 하는 값의 조건이 무엇인지 정확할 경우
- while: 구하고자 하는 값의 조건이 무엇인지 정확히 모를 경우, 유동적인 경우
<반복문 for>
for 변수 in range(횟수):
반복할 코드
<for과 range 사용>
- 파이썬의 for 반복문은 range에서 in으로 숫자를 하나하나 꺼내서 반복하는 방식
- for는 숫자를 꺼낼 때마다 코드 실행
>>> for i in range(3):
print('Hello', i)
Hello 0
Hello 1
Hello 2
>>> start = 1
>>> end = 100
>>> step = 10
>>> list_0 = list(range(start, end, step))
**>> 1, 11, 21, 31, 41, 51, 61, 71, 81, 91** (범위가 1부터 100까지인데, 10씩 건너뛰어 추출)
>>> print(len(list_0), list_0)
10 [1, 11, 21, 31, 41, 51, 61, 71, 81, 91]
>>> for i in range(start, end, step):
print('Hello', i)
Hello 1
Hello 11
Hello 21
Hello 31
Hello 41
Hello 51
Hello 61
Hello 71
Hello 81
Hello 91
>>> start = 1
>>> end = 100
>>> step = -1
>>> list_0 = list(range(start, end, step))
>> 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
>>> for i in range(start, end, step):
print('Hello', i)
Hello 10
Hello 9
Hello 8
Hello 7
Hello 6
Hello 5
Hello 4
Hello 3
Hello 2
Hello 1
<count>
count = input('반복 횟수를 입력하세요:')
for i in range(**int(count)**):
print('Hello world')
>> input() 함수로 입력된 숫자는 문자로 인식하기 때문에, 숫자로 바꾸어 주어야 함
str_1 = 'helloworld'
for i in str_1:
print(i)
h
e
l
l
o
w
o
r
l
d
<반복문 while>
- 조건식이 false가 될 때까지 무한 실행
- true라면 계속 실행하고 false가 되면 즉시 while문 종료
while 조건식:
반복할 코드
i = 0
while i < 10:
print('Hello world')
i = i + 0.1
>> i는 0인데, 0.1씩 계속 더했을 때, i가 10보다 작으면 'Hello world'를 출력
**<for문을 while문으로 변경>**
count = input('반복 횟수를 입력하세요:')
for i in range(int(count)):
print('Hello world')
count = input('반복 횟수를 입력하세요:')
i = 0
while i < int(count):
print('Hello world')
i = i + 1
# 무한루프
while True(=1, 문자열):
print('무한반복')
<반복문 중단 break>
i = 0
for i in range(30):
print(i)
if i == 10:
break
0
1
2
3
4
5
6
7
8
9
10
>> i는 0인데, 30까지 반복문을 실행할 것임. for 조건문 실행 중, i가 10이 되면 반복문 중단
<반복문 건너뛰기 continue>
for i in range(10):
if i % 2 == 0:
continue
print(i)
1
3
5
7
9
>> i는 0~10까지 인데, i를 2로 나누었을 때 나머지가 0으로 나오면 건너뛰고 그 이외에는 출력
<응용: 고객 정보 입력 프로그램>
- 메뉴를 여러 번 물어보도록 수정
- 메뉴를 선택하면 중단하도록 프로그래밍
고객정보 = list()
while True: # 무한루프
메뉴 = input('''
다음 중에서 할 일을 고르시오:
I - 고객 정보 조회
C - 현재 고객 정보 조회
P - 이전 고객 정보 조회
N - 다음 고객 정보 조회
U - 고객 정보 수정
D - 고객 정보 삭제
Q - 프로그램 종료)
''')
if 메뉴 == 'i':
print('고객 정보 입력')
이름 = input('이름을 입력하세요.')
성별 = input('성별을 F,M으로 입력하세요.')
출생년도 = input('출생년도를 입력하세요.')
지역 = input('지역 정보를 입력하세요.')
고객 = {
'이름': 이름,
'성별': 성별,
'출생년도': 출생년도,
'지역': 지역
} # { }는 딕셔너리
고객정보.append(고객)
# 딕셔너리.append(): 선택한 요소의 내용 끝에 내용 추가
elif 메뉴 == 'c' or 'C':
print('현재 고객 정보 조회')
elif 메뉴 == 'p' or 'P':
print('이전 고객 정보 조회')
elif 메뉴 == 'u' or 'U':
print('고객 정보 수정')
elif 메뉴 == 'd' or 'D':
print('고객 정보 삭제')
elif 메뉴 == 'q' or 'Q':
print('프로그램 종료')
print(고객정보)
break
else:
print('선택하신 메뉴가 없습니다.')
'프로그래밍 언어 > Python' 카테고리의 다른 글
파이썬 Python 실습 :: 문자열 심화 (리스트 요소 교체, 문자열 찾기, 서식 지정자) (1) | 2024.01.08 |
---|---|
파이썬 Python 실습 :: 리스트 심화 실습 (요소 추가, 삭제, 수정, 복사) (0) | 2024.01.04 |
파이썬 Python 실습 :: 조건문 if, else, elif 간단 정리 (0) | 2024.01.04 |
파이썬 Python 실습 :: 자료형 함수 및 관리, range(), len() (1) | 2024.01.04 |
파이썬 Python 실습 :: 불(bool)과 비교, 논리 연산자 (2) | 2024.01.04 |