🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

(06:15 - 07:24) else의 생략 문제

20.03.18 10:54 작성 조회수 135

2

선생님께서 작성하신 코드는

(1)

score_file=open("score.txt","r",encoding="utf8")
while True:
    line=score_file.readline()
    if not line:
        break
    print(line,end="")
score_file.close()

입니다. 하지만 제가 배우기로는 if를 쓰고 나면 else를 써주어야 한다고 배웠습니다. 그전 영상에서도 else를 항상 써주셨으니까요. 그런데 이번에는 별도의 else 없이 바로 (if와 같은 indent 깊이로) print를 넣으셨고, 이것은 오류없이 잘 실행됐습니다.

(2)

score_file=open("score.txt","r",encoding="utf8")
while True:
    line=score_file.readline()
    if not line:
        break
    else:
        print(line,end="")
score_file.close()

그래서, 제가 생각하기에 맞는 방식으로, (1)보다 조금 더 명령어들을 넣어서 해봤는데, 정상적으로 잘 작동합니다.

질문은, (1)과 (2)가 완전히 동일한 명령을 호출하는 것인지, 그러니까 (1)과 같이 else를 생략해도 문제가 되지 않는 것인지 궁금합니다.

답변 2

·

답변을 작성해보세요.

0

 감사합니다!

0

안녕하세요

위 예제에서는 if 만 있거나 if else 로 적거나 동일하게 동작합니다. 하지만 실제로 둘은 다릅니다. 마트에 장을 보러 갔을 때

if 만약 초코파이가 있으면:

   초코파이를 사와

오예스를 사와

이렇게 하면 초코파이가 있을땐 초코파이+오예스를, 없을땐 오예스만 사게 됩니다.

if 만약 초코파이가 있으면:

    초코파이를 사와

else:

    오예스를 사와

이렇게 하면 초코파이가 있을땐 초코파이만, 없을땐 오예스만 사게 됩니다.

중요한 개념이니 꼭 이해하고 넘어가세요 ^^

채널톡 아이콘