본문 바로가기
Python/Python Basic

Python 파이썬 기본, 반복문 for / while

by 워니 wony 2019. 5. 9.

반복문

  • 특정 명령어(문장들)을 반복 수행시키기 위하여 사용하는 문장
  • 종류 : for, while

반복문 for

  • for는 ~하는 동안, 주어진 반복 범위에서 반복해 달라고 하는 것
  • for문 안에 함수를 넣을 수 있는데 가장 많이 사용하는 것이 range()함수
  • for x 에서 x는 변수가 선언된 것 처음 0부터 range(숫자)까지 반복되는 상황
  • range 안의 숫자는 바로 전까지 실행 된다. range(4)면 0,1,2,3까지 실행되는 형태
  • for 변수 in range(반복원하는 숫자) :
        명령어
for x in range(8) :
   print("Hello")

(결과값)

Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello

 

  • for 변수 in 문자열 :

    문장 1

    문장 2

     .....

여기서 변수는 문자열의 각 문자 값을 가지며 for의 반복 루프가 진행되어 문장1, 문장2, ...가 반복 수행

word = input('영어 문장을 입력하세요')

for i in word :
	print(i)

(결과값)

영어 문장을 입력하세요hello

h

e

l

l

o

 

<< for 문을 쓰는 형식>>

for 변수 in range(시작값, 종료값, 증감치):

   반복수행시킬 문장들

-----------------------------------------------------

for 변수 in range(시작값, 종료값):

   반복수행시킬 문장들

=> 증감치가 생략되면 기본값은 1

-----------------------------------------------------

for 변수 in range(종료값):

   반복수행시킬 문장들

=> 증감치가 생략되면 기본값은 1 / 시작값이 생략되면 기본값은 0

-----------------------------------------------------

 

 

 

[참고] for 문을 이렇게 사용할  있다.

  • 리스트명  = [ 변수 for 변수 in 담을리스트명]
list = ["a","n","e"]
list2 = [n for n in list]


print("list",list)
print("list2",list2)

(결과값)

list ['a', 'n', 'e']
list2 ['a', 'n', 'e']

 

 

while문

while 조건식 : 

   반복 수행시킬 문장

  • for문이 더 사용하기 좋지만, 시작 종료 값이 명확하지 않은 경우 while이 더 적합할 수 있다. 그 값이 아닌 경우 탈출하라는 경우에 사용하는 경우
  • 반복할 횟수가 분명하게 정해져 있다면 for문이 좋고, 명확하지 않다면 while문이 접합
  • while True는 계속 돌아가는 것 

 

break문으로 빠져 나가기

  • for문이나 while문을 사용하다 보면 반복 루프를 수행 중 중간에 빠져나가고 싶은 경우 사용하는 명령어
  • 일반적으로 if 문과 같이 사용되어 특정 조건을 만족하면 반복 루프를 빠져 나갈 수 있다.

 

ㅇ 누적합이 100이 되지 않는 최대 n을 구하기

tot=0
a = 1

while True:
    tot = tot + a
    print('a:',a,"   tot:",tot)
    if tot>=100:
        break
    a=a+1
    
print('최대 숫자는 a:',a-1,"   tot:",tot-a)

(결과값)

a: 1    tot: 1
a: 2    tot: 3
a: 3    tot: 6
a: 4    tot: 10
a: 5    tot: 15
a: 6    tot: 21
a: 7    tot: 28
a: 8    tot: 36
a: 9    tot: 45
a: 10    tot: 55
a: 11    tot: 66
a: 12    tot: 78
a: 13    tot: 91
a: 14    tot: 105
최대 숫자는 a: 13    tot: 91

 

반응형

댓글