학습 본문으로 건너뛰기
VAIRODE
코드가 움직이는 첫걸음18번째 작은 수업
오늘은 질문 하나만 해결해요18 / 18

처음이어도 괜찮아요 · 그림부터 시작해요

고칠 때 필요한 안내가 나가는 길을 살펴봐요

오늘은 이것 하나만

정상 결과와 고칠 안내를 서로 다른 길로 나눌 수 있어요.

먼저 떠올릴 생활 장면공연 음악과 섞지 않고 무대 뒤 직원에게만 들리는 점검 이어폰 선과 같아요.
  1. 1짧은 이야기 읽기
  2. 2내 생각 하나 고르기
  3. 3네 걸음 같이 보기
  4. 4내 말로 한 줄 적기
오늘의 작은 이야기
먼저 이 장면만 천천히 읽어요

정상 숫자는 한 파일에 모으고 고칠 안내는 화면에 남기려면 길을 나눠야 할까요?

정답을 몰라도 괜찮아요. 지금 생각과 가장 가까운 것을 골라요.

02 · 낯선 말부터 풀기

정확한 이름보다 먼저 쉬운 뜻을 읽어요

처음 보는 말도 책 읽듯 풀어봐요

정확한 이름부터 외우지 않아도 돼요. 쉬운 뜻, 생활 비유와 방금 본 예를 먼저 읽어요. 네 번째 줄에서 책에 나오는 이름을 확인하고, 다섯 번째와 여섯 번째에서 헷갈리는 장면과 내 설명을 살펴봐요.

01프로그램이 문제 상황과 고치기 위한 안내를 밖으로 보내는 기본 통로예요.쉬운 뜻부터 여섯 걸음을 차례로 읽은 뒤 책에서 쓰는 이름을 확인해요.

이 말을 알아두면정상 결과와 고칠 안내를 서로 다른 길로 나눌 수 있어요.

1. 쉬운 말로 풀면
프로그램이 문제 상황과 고치기 위한 안내를 밖으로 보내는 기본 통로예요.
2. 일상에서 비슷한 장면
공연 음악과 섞지 않고 무대 뒤 직원에게만 들리는 점검 이어폰 선과 같아요.
3. 방금 수업에서 보면
sys.stderr.write("확인 필요\n")는 고칠 안내를 기본 문제 통로로 보냅니다.
4. 이 생각의 이름과 정확한 뜻
정확한 이름표준 오류프로그램이 문제 상황과 고치기 위한 안내를 밖으로 보내는 기본 통로예요.

표준 오류(standard error, stderr)는 문제 상황과 고칠 안내를 바깥으로 보내기 위해 기본으로 사용하는 별도 통로다.

5. 헷갈리는 경계

비슷해 보여도 다른 것통로를 나누어도 비밀번호나 개인정보를 안내 문장에 넣어서는 안 되며 실제 보이는 위치는 시작 방법에 따라 달라질 수 있다.

이 비유로 다 설명할 수 없는 것이 비유는 첫 뜻을 잡는 데만 써요. Python이 실제로 비유와 똑같은 모양으로 움직인다는 뜻은 아니며, 통로를 나누어도 비밀번호나 개인정보를 안내 문장에 넣어서는 안 되며 실제 보이는 위치는 시작 방법에 따라 달라질 수 있다.

6. 내 말로 다시 말해보기
정상 숫자는 한 파일에 모으고 고칠 안내는 화면에 남기려면 길을 나눠야 할까요?

그림에서 찾을 쉬운 규칙

  1. 01코드 한 줄을 손가락으로 짚어요.
  2. 02그 줄 앞의 모습을 첫 칸에 그려요.
  3. 03그 줄 뒤의 모습을 다음 칸에 그려요.
  4. 04예상 그림과 컴퓨터가 보여 준 모습을 나란히 봐요.

03 · 그림으로 보기

그림을 보고 다음 장면을 골라요

고칠 때 필요한 안내가 나가는 길을 살펴봐요를 보고, 따라 하고, 다시 해보는 그림두 장면을 비교하는 표01오늘의 장면정상 계산 결과는 자동 도구로보내고 고칠 안내는 사람에게 남기는장면02첫 걸음코드 한 줄을 손가락으로 짚어요.03결과 열기내 답을 먼저 적은 뒤 결과를 열어봐요.직접 살펴보는 그림 · 두 장면을 나란히 놓고 달라진 곳을 번호로 표시한다.처음 생각과 달라도 괜찮아요. 달라진 첫 단계만 다시 봐요.
  1. 01오늘의 장면정상 계산 결과는 자동 도구로 보내고 고칠 안내는 사람에게 남기는 장면
  2. 02첫 걸음코드 한 줄을 손가락으로 짚어요.
  3. 03결과 열기내 답을 먼저 적은 뒤 결과를 열어 봐요.
두 장면을 나란히 놓고 달라진 곳을 번호로 표시한다.내 생각을 먼저 남기면 결과와 쉬운 설명을 차례로 열 수 있어요.현재 화면: 그림 요약 · 그림을 보는 방법: 각 칸을 누르면 그때 확인할 코드 한 줄과 질문 하나가 열린다. · 움직임 없이 보기: 움직임을 줄이면 같은 내용을 위에서 아래로 읽는 번호 목록으로 바꾼다.

04 · 책처럼 천천히 되짚기

방금 한 일을 한 줄씩 다시 읽어요

정상 계산 결과는 자동 도구로 보내고 고칠 안내는 사람에게 남기는 장면

이 장면에서 주어진 것import sys print("결과 5") print("확인 필요", file=sys.stderr)
내 말로 8자 이상 적어요 · 0 / 240

05 · 이제 내가 해볼 차례

여기까지 오면 이런 일을 할 수 있어요

정상 결과와 고칠 안내를 서로 다른 길로 나눌 수 있어요.

  • 코드 한 줄을 손가락으로 짚어요.
  • 그 줄 앞의 모습을 첫 칸에 그려요.
  • 그 줄 뒤의 모습을 다음 칸에 그려요.
  • 예상 그림과 컴퓨터가 보여 준 모습을 나란히 봐요.
오늘 해낼 일과 다 했다고 볼 기준 보기쉬운 순서를 익힌 뒤 더 정확히 확인하고 싶을 때 열어요.

import sys print("결과 5") print("확인 필요", file=sys.stderr)를 보고 먼저 결과를 예상한 뒤 직접 확인하고, 일어난 일을 생활말과 오늘의 정확한 이름 하나로 설명한다.

  • 공개 답을 보기 전에 결과와 까닭을 먼저 적는다.
  • 코드를 직접 돌려 예상과 실제로 본 내용을 분리해 기록한다.
  • 일어난 일을 생활말로 먼저 풀고 오늘의 정확한 이름 하나를 마지막에 붙인다.
  • 글자와 수가 바뀐 새 장면에서도 같은 판단 방법을 사용한다.

06 · 자주 헷갈리는 지점

틀린 답도 이유를 알면 다음에는 맞힐 수 있어요

처음부터 모두 맞힐 필요는 없어요.괜찮아요. 어느 줄까지 예상과 같았는지부터 찾아볼까요?

헷갈리기 쉬운 이유 세 가지 보기내가 어디에서 다르게 생각했는지 찾고 싶을 때 열어요.
01같은 화면에 함께 보이면 두 문장은 반드시 같은 통로를 지났다.

한 번 더 생각해 볼 질문import sys print("결과 5") print("확인 필요", file=sys.stderr)에서 실제로 확인해야 할 장면과 그렇게 판단한 코드 단서를 각각 적어 보세요.

이렇게 고쳐 생각해요정상 결과와 고칠 안내를 다른 통로로 보내면 사람과 자동 도구가 각자 필요한 내용을 나누어 받을 수 있다.

02코드를 먼저 돌리고 보이는 답을 외우면 다음 문제도 풀 수 있다.

한 번 더 생각해 볼 질문아직 코드를 돌리지 않았다고 생각하고 import sys sys.stderr.write("파일을 찾지 못함\n")의 결과와 까닭을 적어 보세요.

이렇게 고쳐 생각해요먼저 예상해야 생각과 실제 동작이 갈리는 지점을 찾을 수 있다.

03예제 하나에서 본 모습은 글자와 수가 달라져도 언제나 그대로다.

한 번 더 생각해 볼 질문import sys print("결과 5") print("확인 필요", file=sys.stderr)와 import sys sys.stderr.write("파일을 찾지 못함\n")에서 같게 적용되는 부분과 달라지는 부분을 나누어 보세요.

이렇게 고쳐 생각해요통로를 나누어도 비밀번호나 개인정보를 안내 문장에 넣어서는 안 되며 실제 보이는 위치는 시작 방법에 따라 달라질 수 있다.

07 · 더 궁금할 때만 보기

선생님과 검토자를 위한 믿을 만한 원문

원문과 어디까지 참고했는지 펼쳐 보기처음 배우는 동안에는 열지 않아도 괜찮아요.