CSV — 이름으로 읽기와 자리로 읽기, 그리고 틀 긋기판
9분여는 장면에 적어 둔 내 예측입니다. 코드 ①은 대여소 정보 파일에서 다섯 줄을 읽고, 이어서 칸 자리를 맞바꾼 가상 개편판을 두 가지 방법으로 읽습니다. 자리로 읽은 쪽은 오류를 낼까요, 아니면 아무 일 없이 숫자를 내놓을까요?
기본 빈칸 ①에 머리글 이름으로 거치대 수를 읽는 코드를 채우고 ▶ 실행하세요. 채우지 않고 눌러도 됩니다 — 무슨 일이 나는지 보는 것도 배움입니다.
[A] ① CSV — 첫 줄(머리글)이 틀이다
머리글: 대여소번호,대여소명,자치구,거치대수,상세주소
위도,경도,설치일,운영방식
00102 망원역 1번출구 앞 거치대 15
00103 망원역 2번출구 앞 거치대 14
00104 합정역 1번출구 앞 거치대 13
00105 합정역 5번출구 앞 거치대 5
00106 합정역 7번출구 앞 거치대 12
읽은 행 5 / 5 (파일 전체 2,789곳)
↳ 이 파일에는 '지금 자전거 몇 대' 칸이 없다
[A] 가상 개편판(두 칸 자리 바꿈)의 102번 대여소
이름으로 읽기 15
자리로 읽기 102 ← 오류 한 줄 없이
파일에서 가장 큰 대여소: LG유플러스 마곡사옥 거치대 62개
도전 개편판을 만드는 줄(개편 = …)을 지우고 개편 = 원판 으로 바꾸면
두 방법이 다시 같아집니다. 그런데 머리글 줄 하나를 통째로 지우면(글.splitlines()[1:]) 어떤 방법이 먼저 멈출까요?
탐구 가장 큰 대여소가 62개라는 것을 알면 102 를 의심할 수 있습니다. 그렇다면 읽은 값이 말이 되는지를 코드가 스스로 살피게 하려면 무엇을 함께 찍어 두어야 할까요?
코드가 한 일을 이번에는 손으로 해 봅니다. 실험실에는 봉투가 셋 놓여 있습니다 — 봉투란 같은 대여소 다섯 곳이 담겨 온 글자 뭉치 한 통(① 파일 · ② 응답 · ③ 공지문)입니다. 날것 글자 그대로예요.
색연필을 골라 글자 한 조각 위를 누르면 그 조각이 칠해집니다. 기계는 그 한 번만 보고 읽는 법(칠한 자리를 어떻게 찾을지 적은 한 줄)을 만들어 나머지 네 줄을 같은 자리에서 읽어 목표 표를 채웁니다. 한 번 더 누르면 지워집니다. 한 회차 안에서 칠하거나 지운 횟수가 손질이에요.
그리고 회차를 넷 지나갑니다 — 회차는 날짜가 아니라 자료가 바뀌는 사건의 차례입니다. 회차를 열기 전에 세 봉투가 어떻게 될지 먼저 잠그고, 열어서 내가 그은 읽는 법이 버티는지 봅니다. 도전 셋을 풀면 카드가 스스로 닫힙니다.
틀 긋기판
기계에게 읽는 자리를 그어 주고, 바뀌는 자료를 버텨라
- 1색연필을 고르고 봉투의 글자 위를 눌러 칠한다 — 한 번 더 누르면 지워진다
- 2다음 회차에 세 봉투가 어떻게 될지 먼저 잠근다
- 3회차를 열어 내가 그은 읽는 법이 버티는지 본다
읽어 낸 칸 = 대여소 다섯 곳 × 값 넷 = 20칸 가운데 값이 나온 칸 · 맞은 칸 = 그 값이 참값과 같은 칸 · 조용한 오류 = 값은 나왔는데 참값과 다른 칸 · 손질 = 그 회차에 칠하거나 지운 횟수
판정 — 회차가 바뀐 뒤 다시 긋지 않고도 맞은 칸이 그대로면 그대로, 틀린 칸이 생기면 조용히 틀림, 읽어 낸 칸이 줄면 다시 그어야 함
1회차에서 세 봉투를 모두 칠해 목표 표를 채워라 — 세 봉투가 읽어 낸 칸은 각각 몇 칸인가? 끝내 채울 수 없는 칸은 무엇인가?
CSV 의 거치대를 값 쪽에 칠해(자리로 읽기) 두고 2회차를 열어라 — 오류가 나는가, 숫자가 나오는가?
4회차까지 가라 — 1회차 뒤로 한 번도 다시 긋지 않아도 되었던 봉투는 어느 것인가?
자료: ① 서울 열린데이터광장 공공자전거 대여소 정보(2026-06 기준) 2,789곳 가운데 102~106번 다섯 줄과 1053번 한 줄 · ② 실시간 대여정보 오픈 API 응답 원문 5행(2026-09-22 21:05:41 KST) · ③ ②의 값으로 수업을 위해 지어낸 문장. 2회차(칸 자리 바꿈)와 3회차(공지 말투 교체)는 지어낸 사건이고, 4회차의 두 칸(LCD · QR)은 원본 엑셀 파일의 실제 모양이다. 읽어 낸 칸·손질·26곳은 코드 ① · ④ 가 찍는 값과 같은 규칙으로 센다.
머리글은 를 위해 있다. 자리로 읽은 코드가 개편판에서 멈추지 않은 것은 때문이고, 그래서 102 라는 값이 로 남는다.
확인 문제 6에 적어 제출 →세 봉투를 나란히 견주는 표는 확인 문제 1에 있습니다 — 미션 ④를 마친 뒤 한 번에 채웁니다.