강좌 안내

한 번 돌아가는 파이썬 코드에서, 반복해서 쓸 수 있는 작은 도구로

기록이 늘고 요구가 바뀌면 코드 한 줄을 복사하는 것으로는 부족합니다. AI001 《파이썬 프로그래밍 입문》은 조건문, 데이터 구조, 함수, 파일 입출력을 단계적으로 실습할 수 있는 학습 경로로 이어 줍니다.

EvoClass 읽는 시간 6분
학습자가 컴퓨터 앞에서 추상적인 프로그램 흐름을 정리하고 있고, 책상에는 독서 기록 카드와 저장 장치가 놓여 있는 모습. 프로그래밍과 데이터 저장의 개념을 표현한 일러스트.

독서 목록을 하나 정리한다고 생각해 보자. 어떤 책은 다 읽었고, 어떤 책은 아직 시작하지 않았으며, 이 진행 상황을 어떻게 저장해서 다음에 이어서 쓸 수 있을까?

책 한 권만 다룬다면 몇 줄의 코드로 충분해 보인다. 책이 열 권으로 늘면 여러 개의 기록을 담아야 하고, 아직 읽지 않은 항목만 골라내려면 판단 규칙을 명시해야 하며, 프로그램을 껐다가 나서야 방금 한 수정이 저장되지 않았다는 사실을 알게 된다.

아주 작은 요구 하나가 프로그래밍의 핵심 문제 몇 가지를 한꺼번에 눈앞에 가져온다. EvoClass의 AI001 《파이썬 프로그래밍 입문》은 이런 기초 역량을 중심으로 열 개의 수업을 구성하고, 문법과 제어 흐름에서 출발해 리스트, 함수, 딕셔너리, 모듈, 파일 입출력으로 점차 나아간다.

프로그램은 다음에 무엇을 해야 하는지 어떻게 아는가

사람은 목록을 보면 어떤 항목부터 처리할지 자연스럽게 판단한다. 반면 프로그램에는 명확한 조건과 절차가 필요하다.

Lesson 2: 제어 흐름과 논리에서는 순차 실행에서 조건 판단, 불리언 표현식, 다중 분기 선택으로 넘어가며, 들여쓰기가 규정하는 코드 블록도 강조한다.

독서 목록으로 돌아가면 우선 질문을 하나만 던질 수 있다. 어떤 기록의 상태가 '미독'인가? 그 답에 따라 남길지 건너뛸지 정하고, 같은 규칙을 다른 기록에도 적용하면 된다.

이 단계에서 연습할 만한 것은 모호한 요구를 명확한 판단으로 바꾸는 일이다. 예를 들어 "쓸모 있는 항목을 찾아라"는 아직 너무 넓지만, "상태가 미독인 항목을 남겨라"는 이미 검사 가능한 규칙으로 옮길 수 있다.

데이터가 많아지면 먼저 담는 방식을 고민한다

항목이 하나를 넘어서면 데이터를 조직하는 방식이 프로그램을 쓰는 방법에 영향을 주기 시작한다.

Lesson 3: 리스트 사용하기에서는 순서가 있는 집합, 인덱스, 슬라이싱, 그리고 요소 추가와 삭제를 다룬다. 책 제목 묶음은 리스트에 넣고 반복문으로 하나씩 처리할 수 있다.

그런데 한 권의 책에는 저자, 읽기 상태, 기록 날짜도 함께 담길 수 있다. 이때 위치만으로 "두 번째 항목이 무엇인지" 기억한다면 이후 수정에 부담이 커지기 쉽다. Lesson 8: 딕셔너리 사용하기는 키와 값을 도입해 필드에 분명한 이름을 부여한다.

리스트의 각 항목에 딕셔너리 하나를 넣는 방식은 이 연습에서 시도해 볼 수 있는 구성 중 하나다. 이는 학습 제안일 뿐이며, 핵심은 데이터 구조의 선택이 어떤 연산은 더 직접적으로 만들고, 다른 사람이 이 프로그램을 어떻게 이해하는지에도 영향을 준다는 점을 몸으로 익히는 데 있다.

같은 일을 반복할 때 복사를 어떻게 줄일까

화면 표시, 목록 내보내기, 개수 집계에서 모두 필터링 규칙을 복사해 두면, 조건을 바꿀 때 여러 곳을 함께 확인해야 한다.

Lesson 5: 함수로 코드 재사용하기는 함수 정의, 매개변수, 호출, 반환값을 중심으로 관련된 작업을 재사용 가능한 단위로 조직하는 방법을 다룬다.

독서 목록의 필터링 작업은 그 자체로 하나의 연습이 될 수 있다. 기록 묶음을 입력받아 조건에 맞는 결과를 반환하는 것이다. 이를 호출하는 쪽은 표시나 저장을 맡고, 필터링 자체는 책임이 분명하게 유지된다.

함수의 이름, 입력, 출력이 분명해지면 검사도 더 구체적으로 할 수 있다. 기록이 없을 때는 무엇을 반환하는가? 모든 책을 다 읽었을 때는 어떻게 되는가? 이런 경계 문제는 코드가 한 번 매끄럽게 실행되는 것보다 프로그램을 이해하는 데 더 도움이 될 때가 많다.

프로그램을 끈 뒤에도 결과는 어떻게 남는가

실행 중 변수에 담긴 데이터는 다음에 프로그램을 열었을 때도 남아 있는 기록이 되지 않는다.

Lesson 9: 파일 입출력은 학습을 프로그램 바깥으로 이끈다. 텍스트를 읽고 쓰고, 파일 자원을 관리하며, CSV, JSON 같은 흔한 데이터 형식에도 접근한다.

독서 목록은 이 경로를 따라 계속 다듬어 갈 수 있다. 먼저 파일에서 읽어 들이고, 기록을 처리한 뒤, 보존할 결과를 다시 파일로 쓴다. 쓸 때는 덮어쓰기와 추가 쓰기를 구분해야 다음 실행에서 원래 지키고 싶었던 데이터가 바뀌지 않는다.

이 목록은 지식을 연결하는 수업 설계 구상이며, 강의에서 이미 제공된 완성 프로젝트도 아니고 이 글이 완료한 소프트웨어 실측도 아니다. 그 가치는 새로운 개념 하나하나가 구체적인 요구에 대응하도록 만들고, 문법 요소를 서로 분리된 목록으로 취급하지 않는 데 있다.

AI001 강의 페이지에서는 기초부터 차례로 배울 수도 있고, 자신만의 작은 과제를 들고 해당 장으로 돌아갈 수도 있다. 마지막에는 그 몇 줄짜리 실행되는 코드가, 스스로 이해하고 고칠 수 있으며 다음에도 계속 쓸 수 있는 도구가 되어 있을지도 모른다.


이 글은 EvoClass의 현재 강의 목록과 강의 자료를 바탕으로 정리했으며, 수업 링크는 영어 자료를 가리킨다. 독서 목록은 학습 제안이며, 이 글은 강의 실습을 실행하지 않았고 강의를 수료하면 바로 상용 소프트웨어를 납품할 수 있다고 약속하지 않는다. 전체 열람 및 프로그래밍 기능 사용 조건은 페이지 안내를 기준으로 한다.