챗GPT를 활용한 파이썬 프로그래밍 (파이썬과 생성형AI엔진을 활용하고 싶은 분들을 위한 활용서 | 개정판)

챗GPT를 활용한 파이썬 프로그래밍 (파이썬과 생성형AI엔진을 활용하고 싶은 분들을 위한 활용서 | 개정판)

$33.33
Description
ChatGPT가 출시되기 이전과 출시된 이후로 개발자들과 엔지니어들의 생각이 많이 바뀌고 있습니다. 마이크로소프트의 코파일럿과 구글의 제미나이도 경쟁을 하면서 좀 더 다양한 생성형 AI 엔진들이 활용되고 있습니다. 각 분야의 개발자들의 다양한 경험담과 활용 사례 등이 나오고 있습니다. 저도 2년째 사용해 보면서 앞으로 꽤 많이 달라질 것이라는 생각이 들고 있습니다. 업무에 어느정도 적절하게 활용한다면 개인의 생산성도 늘릴 수 있고, 코딩 공부에도 상당히 도움을 줄 수 있다고 보고 있습니다. 물론 사람의 습성이 변화를 싫어하고 기존 방식대로 작업을 하는 것을 좋아하기는 합니다. 그래서 아마도 천천히 변화가 되면서 우리의 삶도 영향을 받을 것이라고 생각합니다.

저는 매달 서점에 들려서 트렌드를 파악하는 것을 좋아합니다. 이미 전세계적으로 파이썬 관련 책들은 수천권 이상 출시가 되었고, ChatGPT 관련 책들도 1천권을 넘어서고 있습니다(2024년 8월초 YES24기준). 그럼에도 파이썬과 ChatGPT관련 새로운 책이 필요한지 의문이 생길 수 있습니다.

그러나 저는 아직도 새로운 형태의 책들이 필요하다고 생각하고 있습니다. 비슷해 보이는 강의와 책들이 많지만 그래도 조금씩 다른 강의와 책이 항상 필요하다고 생각합니다.

몇 년 동안 파이썬을 교육하면서 어떻게 하면 파이썬을 효과적으로 가르치고 전달할지를 고민한 적이 많았습니다. 주로 멀티캠퍼스에서 강의를 하고 있고, 비트캠프, 에티버스(구 영우글로벌)에서도 강의를 하고 있습니다. 기업체에 소속된 개발자분들과 엔지니어분들도 많이 만나고 있고, 미취업자 비전공자반의 강의를 해보기도 했습니다. 대부분 문법만 강의하면 재미가 없고... 문법의 기초 없이 라이브러리만 가르치는 것도 문제가 있고... 그래서 기존 개발자들과 처음 IT에 입문하는 분들이 좀 더 쉽게 적응하실 수 있도록 파이썬의 문법도 공부하고 라이브러리 활용도 같이 공부할 수 있도록 이 책의 내용들을 구성했습니다.

그리고 상징적으로 이 책에 추가된 그림들은 생성형 AI엔진인 미드 져니를 통해서 생성한 이미지들을 사용해 보았습니다.

이 책의 목차는 제가 보통 기업체에서 오신 분들을 5일동안(1주 34시간) 가르치는 내용들과 거의 비슷하게 구성을 했습니다. 빠르게 독학을 한다면 2주정도 걸리는 시간이고 천천히 이 책을 보면서 따라한다면 4주정도면 충분히 볼 수 있는 분량입니다. 개정판에서는 내용이 좀 더 추가되었기 때문에 필요한 파트만 선택해서 봐도 됩니다.

이 책은 크게 3개의 파트로 구성되어 있습니다. 첫번째 파트는 파이썬의 문법과 ChatGPT의 기본적인 사용방법을 학습하는 1장에서 6장까지의 내용입니다. 아무래도 기초가 튼튼해야 더 많은 형태로 활용할 수 있습니다. 기존에 파이썬의 문법을 공부해 본 분들은 다시 한번 정리할 수 있도록 내용을 구성했으며, 처음 개발을 하는 분들을 위해서도 변수와 함수부터 학습하실 수 있도록 책의 내용을 구성했습니다. 그럼에도 처음 프로그래밍을 공부하는 분들에게는 좀 어려운 내용일 수 있습니다. 그러나 반복해서 보시면 내용을 이해하는데 도움이 될 것 같습니다.

두번째 파트인 7장에서 11장은 파이썬 내부 라이브러리를 살펴보고, 외부 라이브러리를 설치하고 활용하는 방법에 대한 내용입니다. 여기서는 좀 더 ChatGPT를 재미있게 활용하는 방법에 대해서 설명합니다. 파이썬에서 인기있는 주제인 웹크롤링에 대한 내용과 PyQt를 사용해서 GUI(Graphic User Interface)를 만들어서 실행파일로 배포하는 방법을 설명합니다. 요즘 인기 있는 데이터 분석과 시각화에 대한 내용들도 데이터베이스에서 시작해서 Pandas, matplotlib라이브러리를 활용하는 방법들로 구성했습니다.

세번째 파트는 개정판에서 추가된 내용으로 12장에서 14장까지의 내용입니다. 12장에서는 GPT4o를 활용한 데이터 분석과 시각화로 직접 파이썬으로 코딩하지 않아도 기본적인 데이터 분석과 시각화가 가능한 것을 다루고 있습니다. 13장은 OpenAI API를 사용해서 내가 만드는 프로그램에 생성형AI를 활용하는 내용을 다루고 있습니다. 14장은 LangChain라이브러리를 활용해서 LLM엔진을 활용하는 부분을 다루고 있습니다. 생성형AI와 LLM을 내 프로그램에서 어떻게 활용할 수 있는지를 살펴봅니다.

ChatGPT의 경우 간단하게 글을 생성하는 것도 좋지만, 마치 옆에 실력 있는 동료 개발자를 앉혀 놓고 도움을 받는 형태로 파이썬의 필요한 코드를 생성하고, 주석을 추가하고, 기존 코드를 좀 더 멋진 코드로 작성해 달라고 부탁하면서 공부도 할 수 있습니다. 내가 만드는 애플리케이션에 OpenAI API를 활용하면 정말 막강한 애플리케이션을 손쉽게 만들 수 있습니다. 앞으로는 이런 생성형 AI의 도움을 받을 일이 더 많아질 것 같습니다.

ChatGPT는 전세계의 모든 도서관에 있는 책을 읽고, 모든 커뮤니티의 글을 읽고 세상의 다양한 코드들을 학습한 똘똘한 엔진입니다. 한 명의 개발자가 평생 볼 수 있는 코드의 양에는 한계가 있는데 그 한계를 뛰어 넘고 있는 생성형 AI 엔진입니다. 이런 트렌드라면 ChatGPT를 사용하지 않는 것이 오히려 손해를 보는 상황일 수도 있습니다. 마이크로소프트의 코파일럿과 구글의 제미나이도 같이 사용해 볼 수 있도록 개정판에 해당 내용들을 추가했습니다.

이 책을 보시면서 ‘ChatGPT를 이렇게도 활용할 수 있구나!’ 하는 느낌을 받으셨으면 합니다. 저도 많은 분들의 사용 경험과 생성된 코드들을 보면서 영감을 얻고 배우고 있습니다.

이 책의 소스는 아래의 주소에서 다운로드 받을 수 있습니다.
https://github.com/papasmf1/ChatGPTPython2

이 책의 온라인 강의는 아래의 사이트에서 보실 수 있습니다. 샘즈 온라인 강의와 인프런 온라인 강의가 아래의 주소에서 서비스 되고 있습니다.

https://ssamz.com/
https://www.inflearn.com/

네이버 블로그를 통해서도 이 책의 셋팅에 관련된 동영상을 올려서 제공하고 있습니다.

독자 여러분의 건투를 빕니다. 부족하거나 추가되는 내용들은 깃허브를 통해서, 샘즈 온라인 강의와 네이버 블로그를 통해서 지속적으로 제공하도록 하겠습니다.
저자

김종덕

멀티캠퍼스에서전임교수로강의를하고있는김종덕전임교수입니다.멀티캠퍼스에서파이썬프로그래밍과정,아이폰앱개발과정,닷넷과정등을강의하고있습니다.소프트뱅크교육센터,트라이콤교육센터,에티버스교육센터,비트캠프등에서재직자,미취업자반을강의한경험을가지고있습니다.삼성전자,삼성SDS,현대중공업,미포조선등의기업체강의도다수진행했습니다.
마이크로소프트의공인강사MCT(MicrosoftCertifiedTrainer)로2002년부터활동을하고있습니다.주로닷넷으로개발과강의를했었고,꾸준하게아이폰앱개발과정과파이썬과정을강의하고있으며,최근에는Azure개발자기술들을준비하고있습니다.
IT를좋아하고IT를취미로하면서살고싶은강사입니다.새로운전자기기를무척이나좋아하며,미러리스를통한사진촬영,그리고트라이폴드자전거를사용하면서한강라이딩을즐기고있습니다.앞으로프리라이더의삶을사는것이꿈입니다.네이버블로그에제가하는강의관련프로그래밍과경제적자유에대한글을쓰는것을무척이나좋아합니다.

저서로는
AboutC#(2002년영진출판사)
AboutASP.NET&ADO.NET(2001년영진출판사)
.NET개발자를위한SQLServer2005(2007년대림출판사)
챗GPT를활용한파이썬프로그래밍(2023년아이티포럼)등이있습니다.

블로그:https://papasmf.blogspot.com/
네이버블로그:https://blog.naver.com/papasmf1004

목차

1장파이썬소개와개발도구설치하기
1.1왜파이썬을공부해야하는가?
1.2Python설치와VisualStudioCode설치하기
1.3ChatGPT에회원가입하고기본적인프롬프트사용하기
1.4ChatGPT에명령(task)과맥락(context)을지정하기
1.5마이크로소프트의코파일럿사용하기
1.6구글의제미나이사용하기

2장파이썬의자료형식과연산자사용하기
2.1변수와함수에대한기본개념
2.2숫자와문자열형식사용하기
2.3문자열에서인덱싱과슬라이싱사용하기
2.4List,Tuple,Set,Dict형식사용하기
2.5값형식(ValueType)과참조형식(ReferenceType)비교하기
2.6파이썬의연산자사용하기
2.7ChatGPT로List,Tuple,Dict형식비교하는코드생성하기

3장파이썬의함수사용과분기반복문사용하기
3.1함수를사용하는이유
3.2함수를정의하고호출하기
3.3다양한함수만들어보기
3.4가변인자를처리하는함수만들기
3.5람다함수정의하기
3.6ChatGPT로함수를생성해서연습하기
3.7분기반복문사용하기
3.8반복문에서활용할수있는리스트컴프리헨션사용하기

4장파이썬에서클래스사용과모듈,패키지활용하기
4.1객체지향프로그래밍이해하기
4.2클래스를정의하고인스턴스생성하기
4.3object클래스공부하기
4.4클래스내부에멤버변수를숨기기
4.5상속받고재정의하기
4.6모듈과패키지를사용하기
4.7pyinstaller를설치해서실행파일(*.exe)만들어보기
4.8패키지에대한소개
4.9생성형AI로클래스코드생성해보기

5장파이썬의서식처리와파일입출력하기
5.1파이썬에문자열정렬하고연결하기
5.2다양한서식문자를사용하기
5.3f-string을사용해서서식문자를사용하기
5.4파이썬에서파일을생성하고읽고쓰는작업하기

6장파이썬에서문자열처리메서드와정규표현식활용하기
6.1파이썬에서기본적인문자열처리하기
6.2정규표현식(Regularexpression)문법공부하기
6.3생성형AI로복잡한정규표현수식을생성해서사용하기

7장파이썬의내장라이브러리를살펴보고활용하기
7.1time,datetime모듈로날짜와시간다루기
7.2os.path,os,random,glob,shutil모듈사용해보기
7.3ChatGPT와Python을사용해서다운로드받은파일들자동으로분류하기

8장파이썬에서데이터베이스활용하기
8.1데이터베이스에대한기본적인개념
8.2SQLite를사용한Python코딩
8.3SQL기본구문을연습하기
8.4DBBrowserforSQLite사용하기
8.5생성형AI엔진을데이터베이스학습에활용하기

9장웹크롤링을위한BeautifulSoup설치와활용하기
9.1크롤링에필요한라이브러리들설치하기
9.2기본적인HTML,CSS에대한이해
9.3BeautifulSoup사용하기
9.4selenium,requests,clipboard사용하기
9.5ChatGPT를사용해서네이버신문기사크롤링하기

10장파이썬에서PyQt를설치해서GUI프로그래밍활용하기
10.1PyQt소개와설치하기
10.2Qt디자이너를사용해서간단한GUI화면만들기
10.3좀더복잡한GUI화면만들기-시그널과슬롯처리
10.4SQLite와같이사용할GUI화면만들기
10.5Pyinstaller를사용해서실행파일로만들기
10.6QtDesigner를사용하지않고GUI화면만들기
10.7BeautifulSoup과같이사용할GUI화면만들기
10.8ChatGPT를사용해서리팩토링한코드생성하기

11장파이썬에서데이터분석과시각화활용하기
11.1파이썬을사용한데이터분석과시각화에대한기본적인소개
11.2Pandas,matplotlib,seaborn설치하기
11.3Pandas의대표클래스인Series,DataFrame사용하기
11.4여러개의데이터프레임을좌우,위아래로연결하기
11.5데이터수집,데이터집계,시각화단계개념잡기
11.6판다스의전역함수로데이터로딩해서데이터프레임생성하기
11.7상세데이터를집계하기
11.8데이터를시각화하기
11.9gapminder데이터셋을사용해서연습하기

12장ChatGPT를사용한데이터분석자동화와시각화하기
12.1GPT4o의멀티모달을사용한데이터분석소개
12.2GPT4o를사용한데이터분석자동화와시각화하기

13장OpenAI의API를사용한프로그래밍
13.1OpenAIAPI키생성하기
13.2구글의코랩사용하기
13.3파이썬에서OpenAIAPI사용하기
13.4PyQt와OpenAIAPI를사용해서컴퓨터비전애플리케이션만들기

14장LLM을활용한프로그래밍-LangChain사용하기
14.1생성형AI에대한소개
14.2LangChain소개와설치해서사용하기
14.3LangChain에서프롬프트템플릿사용하기
14.4RAG(RetrievalAugmentedGeneration)기법사용하기
14.5LangChain에서Agent사용하기