앞선 포스트에서 조건문을 배웠습니다.
반목문이란? 말그대로 특정작업을 반복하게 해주는 문법입니다.
For
반복문 for문은 특정 조건이 만족될때까지 반복으로
예를 들어 설명해보겠습니다.
print()함수를 이용해서 1부터~10까지 숫자를 출력할려고 합니다.
우리가 기존에 알고 있던 방법으로는
이런식으로 출력을 하게 될 겁니다.
print() 부분은 그대로인데 안에 값만 바뀌면서 출력을 하고 있죠?
이 값이 지금은 10개지만 만약 1~ 1000,1~10000까지 굉장히 많은 수를
출력하려고 하면 굉장히 긴 시간이 걸립니다.
이런 작업을 간단히 컴퓨터에게 명령을 하기 위해 for문을 쓰게 됩니다.
사용법을 알아봅시다.
for 로 시작하게 됩니다. number 는 변수입니다.
range()는 지금은 그저 1부터 100까지 수를 담은 함수 라고 생각합시다.
print(number)를 하게 됩니다.
자 그런데 우리는 number를 따로 무엇인가 저장을 하지 않았습니다.
그런데 이 코드를 실행시켜보면 1부터~ 100까지 출력이 될 겁니다.
즉 number 는 1을 저장해서 1을 출력하고 2를 저장해서 2를 출력하고,
이런식으로 100까지 저장해서 출력하고를 반복한 겁니다.
number in range() 가 range()값에서 1개씩 가져와서 number에 저장해라 라는 뜻이 되는거죠
또한 100에서 멈춘이유는 range()의 값이 100까지밖에 없어서 입니다.
즉 조건식이 만족하지 않으면 for문은 끝나게 되는 것이죠.
in 뒤에는 꼭 range가 아니라 list,tuple등등 올 수 있으며 하나씩 가져온다 라고 아시면 됩니다.
dict 로 예시를 보여드리겠습니다.
my_phone 에 key 값이 brand , model , color , year , value 값으로 apple ,iphone 12 , red ,2021이
저장되어 있습니다.
반복문을 통해 key값들을 출력해봅시다.
앞서 숫자출력과 마찬가지로 for문으로 시작합니다.
data는 변수 입니다. my_phone.keys()는 키값들을 가져오는 함수이죠?
첫번째 키값 brand를 가져와서 data에 저장하고 print를 합니다.
두번째 키값 model을 가져와서 다시 data에 저장하고 print를 합니다
이런식으로 마지막 값 year까지 저장해서 print를 하시면
더이상 키값이 존재하지 않기때문에 반복문을 종료하고 끝나게 됩니다.
자 그러면 이렇게 반복되는건 알겠어요. 근대 반복을 하다가 특정 부분은
실행하지 않고 넘어가거나 , 특정부분이 나왔을 때, 멈추는 방법은 없나요?
라고 물어보실 수 도 있습니다.
이럴땐 그전 포스트에서 배웠던 if문을 함께 이용하여 해결 할 수 있습니다.
fruits 라는 리스트를 만들었습니다.
반복문을 이용해 출력을 할건데 mango가 나오면 멈춰주세요! 라는 조건으로
코딩을 짜봅시다.
다음과 같이 작성해보았습니다.
for 문 으로 시작 data는 변수 in fruits를 통해 fruits 값을 data에 하나하나 저장을 할겁니다.
print(data)로 출력을 하는데 if문이 있습니다 .
data의 값이 mango이면 break 해라 라고 적혀있습니다.
바로 이 break 가 반복문을 멈추는 키워드입니다.
(*조건문 멈추는게 아니라 반복문을 멈추는 키워드입니다.)
mango 뒤에 watermelon은 반복이 멈췄기때문에 출력되지 않습니다.
그러면 mango만 출력되지 않을려면 어떻게 해야할까요?
바로 continue 키워드를 이용하는 방법입니다.
mango가 나오면 continue 키워드를 통해 이반복을 다음 반복으로 넘기게 됩니다.
즉 apple blueberies 를 출력하고 mango 차례가 되면 watermelon 으로 넘어가서
출력하게 됩니다.
이런식으로 반복문을 멈추는 키워드 break , 반복을 넘기는 키워드 continue 가 있습니다.
'개발 > 파이썬' 카테고리의 다른 글
파이썬 기초. 함수() (0) | 2022.11.21 |
---|---|
파이썬 기초. 반복문 (while) , 중첩된 반복문 (0) | 2022.11.18 |
파이썬 기초. if 와 elif (0) | 2022.11.17 |
파이썬 기초. 비교연산, 조건문(if) (0) | 2022.11.17 |
파이썬 기초. Tuple과 Set (0) | 2022.11.16 |