코린이 python 의 for 반복문과 contunue 사용법 이게 맞는건가요... ㅠㅠ

조회수 707회

고수님들 안뇽하세요 질문올립니다!

    numbers = [ (1,2),(10,0) ]

    for a,b in numbers:
        if b == 0:
            print("0으로 나눌 수는 없습니다.")
            continue
        print("{}를 {}로 나누면 {}".format(a,b,a/b))

문제 : ' 다음 코드는 numbers에 있는 튜플을 받아들여서 튜플의 첫번째 숫자를 두번째 숫자로 나누는 일을 합니다. 이 때, b0이면 0으로 나눌 수는 없습니다.라고 출력하는데요. 이 if else문에서 continue문을 이용하여 else를 사용하지 않도록 변경해 보세요 ' 라는 문제입니다.

제가 이해한걸 설명드리겠습니다.

numbers 라는 리스트안에 두개의 튜플이 존재한다. 그리고 for in 반복문이 쓰였고, continue문법과 format문법이 쓰였다.

numbers 라는 리스트안의 값을 a,b 두 변수에 차례로 집어넣어서 반복해준다.

: (콜론 == 그렇다면) 만약 b가 0이라면 '0으로 나눌 수는 없습니다.' 를 출력해라

이것이 '참' 이라면 continue(반복문의 처음으로 돌아간다)해라.

따라서 다시 처음으로 가는데요..

여기서 제 질문 ,, (1,2) 가 대입되지 않고 다시 for 반복문의 처음으로만 가는 건가요? 아니면 처음부터 a,b자리에 (1,2)라는 리스트 안의 값(실행인자. argument )이 대입이 되는건가요? 순서를 잘 모르겠습니다. ㅠㅠ 질문이 많아 죄송합니당. 저도 나중에 실력이 쌓이면 코린이분들에게 많이 도움을 주겠습니다! 고수님들 정말 감사해요 사랑해요!

  • numbers의 (1,2) -> (10,0) 순서로 for문이 돌아갑니다. (1,2)는 if 조건 2==0 (if조건은 if 부터 continue 까지 입니다.)을 만족하지 않으니 마지막 print인 '{}를{}로 나누면 {}' 를 출력하네요. 여기를 궁금해 하시는거 같은데.. 처음으로 가는 게 아니라 if문을 지나서 맨 아래 print 코드로 갑니다.. 그담에 (10,0)이 들어와서 if문 만족하니 '0으로 나눌수없습니다.' 출력 후 continue 때문에 나머지 for문은 건너 뜁니다. 알 수 없는 사용자 2019.11.13 17:15
  • 신이시여.... 코딩의 신이시여.... 정확합니다. 제가 가려웠던 부분을 긁어주셨어요 이제야 이해가 가네요 ㅠㅠㅠㅠㅠㅠ 진짜 감사합니다. 저녁맛있게드세용 사랑해용! 이정운 2019.11.13 17:58

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)