Python

반복문(while,for)

웅-이 2022. 5. 2. 09:28
  • 반복 횟수가 명확하지 않을 때
  •  
# 기본구조
# while 조건식:
#     실행문장
#     싫행문장2
#     if 조건식:
#         실행문장
while 실습
# 1~3까지 출력
number = 1
while number<=3:
    print(number)
    number+=1
1
2
3
# break 멈추는 키워드, while문을 멈춤
number = 1
while True:
    print(number)
    number +=1
    if number >3:
        break
1
2
3
 while문 활용해서 '파이썬 최고!' 13번 출력해보기

str = '파이썬 최고!'
num = 1

while True:
    print(str)
    num+=1
    if num >13:
        break
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!
파이썬 최고!

while True:  
    num1 = int(input('첫 번째 정수 입력 >>'))
    num2 = int(input('두 번째 정수 입력 >>'))
    result = num1+num2
    if num1==0 and num2==0:
        print('프로그램이 종료되었습니다.')
        break
        print(f'두 정수의 합 :{result}')
첫 번째 정수 입력 >>0
두 번째 정수 입력 >>0
프로그램이 종료되었습니다.

now=int(input('현재 몸무게'))
goal=int(input('목표 몸무게'))
num=1
while True:
    now-=int(input(f'{num}주차 감량 몸무게 :'))
    num+=1
    if now<goal:
        print(f'{now}kg 달성!! 축하합니다!')
        break
    
    
    현재 몸무게80
목표 몸무게70
1주차 감량 몸무게 :2
2주차 감량 몸무게 :3
3주차 감량 몸무게 :4
4주차 감량 몸무게 :5
66kg 달성!! 축하합니다!
​

for

  • 반복 횟수가 명확할때
# 기본구조 - 대상들의 크기(길이)만큼 반복
for 변수 in 문자열(리스트 or 튜플):
     print(변수)
# for문 예시 
list_food = ['햄버거','치킨','피자']
for i in list_food:
    print(i)
    
햄버거
치킨
피자
​

 

# 튜플 for 예시
tp_ice = ('아몬드봉봉','뉴욕치즈','사빠딸','초코나무숲')
for ice in tp_ice:
    print(ice)
    
아몬드봉봉
뉴욕치즈
사빠딸
초코나무숲
# 문자열 for 예시
hi = '안녕!나는재연이야'
for i in hi:
    print(i, end ='')
    안녕!나는재연이야

end 를 활용하면 옆으로 출력할수있다!!

# 이중리스트
lst = [['현우','A'],['재우','AB'],['나윤','B'],['감중','A'],['진석','O']]
print(lst[0][1])
print(lst[1][1])
print(lst[2][1])

A
AB
B
​

score_list = [90,45,70,60,55]
num=1
for i in score_list:
    if i>=60:
        print(f'{num}번 학생은 합격입니다.')
        num+=1
    else:
        print(f'{num}번 학생은 불합격입니다.')
        num+=1
        
1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 합격입니다.
5번 학생은 불합격입니다.

* range() 함수 사용

  • 필요한 만큼의 숫자를 만들어내는 유용한 기능
  • range(시작할 숫자,종료할 숫자, 증감량)
  • range(1,10,1) -> 1부터9 까지 1씩증가
  • range(1,100,3) -> 1부터 99까지 3씩 증가
  • range(10,1,-1) -> 10부터 2까지 -1씩 감소

* range 내 생략

  • range(기본값0,종료할숫자(무조건입력),기본값1)
  • range(3,10) -> 3부터 9까지 1씩증가 증감값 생략
  • range(10) -> 0부터 9까지 1씩 증가 시작값이랑 증감값 생략

1부터 9까지 1씩증가

for i in range(1,10,1):
    print(i, end=' ')
    1 2 3 4 5 6 7 8 9

10부터 2까지 1씩 감소

for i in range(10,1,-1):
    print(i,end=' ')
    
    10 9 8 7 6 5 4 3 2

3부터 9까지 1씩증가 (증감값 생략)

for i in range(3,10):
    print(i,end=' ')
    
    3 4 5 6 7 8 9

0부터 7까지 1씩증가 (시작값이랑 증감값 생략)

for i in range(8):
    print(i,end=' ')
    
    0 1 2 3 4 5 6 7

score_list = [90,45,70,60,55]

for i in range(len(score_list)):
    if score_list[i]>=60:
        print(f'{i+1}번 학생은 합격입니다.')
    else:
        print(f'{i+1}번 학생은 불합격입니다.')
     
1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 합격입니다.
5번 학생은 불합격입니다.

list2 =[4,5,2,1,99,15,2,7,27]
max = list2[0]
for i in range(len(list2)):
    if list2[i]>max:
        max=list2[i]
print(max)

99