프로그래밍 언어를 시간이 생기는 대로 조금씩 공부하고 있습니다. 코딩을 배워서 취업을 목적으로 하는 것은 아닙니다. Chat GPT 코딩, 블로그 생산성 제고, 코딩을 활용한 수익 파이프 개발 등을 목적으로 하고 있습니다.
현재 가장 범용성이 높고, 접근이 쉬운 프로그래밍 언어로 파이썬을 많이 이야기합니다. 이번 포스팅에서는 먼저 Chat GPT로 파이썬 학습 커리큘럼을 작성하겠습니다. 이를 토대로 파이썬을 학습하는 방법을 정리하겠습니다. 프로그래밍 언어에 관한 전문적인 지식이 없기 때문에, 그 수준에 맞추어 설명하겠습니다.
파이썬 실습
파이썬 선행 지식
파이썬을 배우기 위해 필요한 선행 지식은 없다고, Chat GPT가 답변해 주었습니다. 다만 HTML/CSS/Javascript를 배웠다면, 기본적인 코딩 지식을 학습한 것입니다. 특히 Javascript 학습으로 프로그래밍 논리와 개념을 이해했다면, 그 배경 지식은 파이썬을 학습하는 데 도움이 될 수 있습니다.
구글 코랩
다른 프로그래밍 언어도 마찬가지지만, 코드를 실행·연습하기 위한 도구가 필요합니다. 여기서는 구글 코랩을 활용합니다. 구글 코랩은 구글의 GPU와 CPU를 활용하는 클라우드 서비스이며 파이썬이 탑재되어 있습니다. 별도로 파이썬 프로그램을 설치하지 않고, 실습할 수 있는 가상의 공간입니다.
구글에서 구글 코랩을 검색합니다. 구글 회원이라면 바로 사용할 수 있습니다. 구글 코랩에 접속하여 상단 메뉴에서 파일을 선택하고, 새 노트를 클릭합니다. (링크)
코드 입력창, 실행 버튼, 상단 노트의 제목(변경 가능)을 확인할 수 있습니다.
파이썬 커리큘럼
일단 Chat GPT에 적절한 학습 시간을 물어보니 하루 1~2시간, 주 5회의 꾸준한 학습을 추천합니다. 처음부터 지치면 안 되니, 하루 90분에 주 5일 수업을 토대로 커리큘럼 작성을 요청하겠습니다. 총 25회로 구성된 커리큘럼을 작성해 주었습니다.
파이썬 수업(1)
이제 커리큘럼을 토대로 세부 질문을 합니다. 1일 차는 넘기고 2일 차 내용을 토대로 ‘파이썬의 기본 문법에는 어떤 것들이 있지’라고 질문합니다. 변수, 연산자, 제어 구조를 포함해 총 10가지의 문법을 알려줍니다. 이제 오늘의 수업은 크게 10가지 문법으로 좁혀졌습니다.
다음 요청은 변수의 개념과 예제가 되는 파이썬 코드를 보여 달라고 요청하겠습니다. ‘파이썬의 변수에 관해 설명해 주고, 코드 예시도 보여줄래’라고 요청합니다. 다음과 같은 코드를 보여줍니다. 등호를 사용해 변수에 값을 할당하는 간단한 코드입니다. Print()를 입력하여 각각의 값을 출력합니다.
이제 이 코드를 복사해서, 코랩에서 실행하겠습니다. 다음과 같은 결과를 확인할 수 있습니다.
특정 변수에 관해 질문이 있다면 Chat GPT에게 질문합니다. 예를 들어 Integer, float, string, valid 변수에 대해 알려 달라고 요청하겠습니다. 다음과 같은 답변을 얻었습니다. 이제 우리는 파이썬에서 많이 쓰이는 4가지 변수를 이해하게 되었습니다.
파이썬 수업(2)
오늘 수업의 2 번째 내용은 연산자입니다. 플러너스, 마이너스 등의 기호를 의미합니다. ‘파이썬에는 어떤 연산자들이 있어? 연산자들을 활용한 간단한 파이썬 코드 예제를 보여줄래?’라고 요청합니다. 각종 연산자가 어떤 용도로 이용되는지 설명해 주었습니다.
코드를 코랩에서 한번 실행해 보겠습니다. 코랩의 결과를 토대로 세부 내용에 관한 질문을 합니다.
정리
이번 포스팅에서는 Chat GPT와 구글 코랩을 활용한 파이썬 학습 방법을 알아보았습니다. 절차를 다시 정리하겠습니다. 구글 코랩에 가입합니다. Chat GPT에게 커리큘럼 작성을 요청합니다. 날짜별 주요 내용의 설명과 파이썬 코드 예제를 요청합니다. 본문 내용을 이해했다면, 코드를 실행하여 확인합니다. 이해가 안 되는 부분은 Chat GPT에게 다시 질문합니다. 이 과정을 반복합니다.
파이썬의 내용을 간단히 살펴본 결과, 코딩 학습의 기초라고 할 수 있는 HTML/CSS/Javascript를 먼저 학습하는 것이 좋을 것 같습니다. 익숙한 용어들이 많이 등장하기 때문에, 수업 집중이라는 측면에서 더 좋은 것 같습니다. 이제 막 HTML/CSS/Javascript를 배운 초보의 의견 정도로 이해하시길 바랍니다.