독학 파이썬
야마다 요시히로 지음, 윤모린 옮김 / 정보문화사 / 2024년 12월
평점 :
장바구니담기



'이 리뷰는 컬처블룸을 통해 출판사에서 도서를 제공 받아, 직접 읽고 작성한 리뷰입니다.'




파이썬에 대해 알아보자




책을 선택한 이유


파이썬 은 가장 인기있는 프로그래밍 언어다.


직관적이어서 익히기 쉽고, 많은 사람들이 사용하므로,

AI 시대에 효과적으로 사용할 수 있다.


파이썬을 알아보기 위해 "독학 파이썬"을 선택한다.





"독학 파이썬"은


1장 소개

2장 파이썬 기초

3장 연산자

4장 제어문

5장 표준 라이브러리 기본

6장 표준 라이브러리 컬렉션

7장 표준 라이브러리 기타

8장 사용자 지정 함수

9장 사용자 지정 함수 응용

10장 객체지향 구문

11장 객체지향 구문 응용


으로 구성되었다.





1장 소개 에서는


파이썬 은 머신러닝, AI, 딥러닝, 서버사이드 개발, 시스템 관리,

사물 인터넷 등과 같은 분야에서 활용되는 프로그래밍 언어다.


기계어는 컴퓨터 지시 내용을 0, 1로 나타내는 언어며,

고급 언어는 인간이 이해하기 쉬운 프로그래밍 언어다.


컴파일 처리는 고급 언어로 작성된 프로그램 을 컴퓨터 가 이해할 수 있는

형식으로 번역한다.


파이썬 은 인터프리터 언어로 번역하면서 실행하기 쉬우며,

스크립트 언어로 작성 방법이 간단, 간결하다.


객체지향은 프로그램 중에서 다루는 대상을 사물에 빗대어,

객체의 조합으로 애플리케이션 을 형성하는 방법이다.



라이브러리 는 앱을 개발하는 도구다.

파이썬 은 다양한 분야에서 충실한 라이브러리 가 제공된다.


파이썬 의 역사, 개발 상황, 기본 환경 설정,

파이썬 코드 실행, 파이썬 셸을 활용한 파이썬 코드 실행,

파일로 파이썬 코드 실행 방법을 설명한다.


문자 코드 설정, 개행, print, 대소 문자 구분, 주석 등 파이썬 기본 규칙,

디버그, 주피터 노트북에 대해 설명한다.





2장 파이썬 기초 에서는


변수는 스크립트 를 도출하기 위한 데이터 를 일시 저장하는 것이다.


변수명과 자료형을 선언하고, 변수명을 지정해서 변숫값을 꺼내는 것을

참조한다라고 부른다.


식별자는 식별하기 위한 이름을 말한다.

읽기 쉬운 코드를 만드는 식별자 명명 요령, 변수 삭제, 정수를 설명한다.


정수는 내용물을 변경할 수 없는 그릇이다.



자료형은 데이터 의 종류를 말한다.


내장형은 파이썬 인터프리터 에 기본적으로 지원된다.

논리형, 정수형, 부동 소수정 타입, 값 세퍼레이터, 복소수형,

문자열형, 특수한 문자열 표현, 리스트에 대해 설명한다.




3장 연산자 에서는


산술 연산자는 사칙연산, 숫자를 사용하는 연산자다.


자료형에 따른 동작 변화, 문자열과 값의 연산,

나눗셈을 나타내는 연산자, 부동 소수점 연산을 설명한다.



대입 연산자는 좌변에서 지정한 변수에 대해 우변의 값을

설정하기 위한 연산자다.


복합 대입 연산자는 좌변과 우변의 값을 연산한 결과를 좌변에 대입한다.


값의 증감, = 연산자, 뮤터블 과 이뮤터블, 언패킹 대입을 설명한다.



비교 연산자는 좌변과 우변의 값을 비교해 결과를 True/Falsw로 반환한다.

다른 형끼리 비교, 리스트 비교, 부동 소수점 비교, 동일성과 동등성에 대해 설명한다.



조건 연산자는 지정된 조건식의 진위 여부에 따라 대응하는 식의 값이다.


논리 연산자는 복수의 조건식을 논리적으로 결합해 결과를 True/False로 반환한다.


쇼트컷 연산, 비교 연산자 연결, 비트 연산자, 우선순위와 결합규칙을 설명한다.




4장 제어문 에서는


조건 분기 구문 if elif else 문을 살펴본다.


if 문-단순 분기, if 문-다중 분기, if 문-중첩 구조,

조건식을 지정할 경우 주의해야 할 점을 설명한다.


조건 분기와 함께 활용되는 것이 반복 처리,

구조화 프로그래밍에서 말하는 반복이다.


while 문으로 조건식 True의 하위 처리 반복하기,

무한 루프, for 문, range 함수, 리스트 내포에 대해 설명한다.


루프 제어문은 특정 조건을 만족한 시점에서 루프를 강제 중단하거나,

특정 반복만을 스킵 한다.


break 문, continue 문, 루프 의 종료 처리, 중첩 루프의 중단/스킵 을 설명한다.



오류는 앱에서 사전에 처리 가능한지 여부에 따라

구문 오류와 예외로 나눌 수 있다.


예외를 처리하는 try 문, 예외 여부에 관계 없이 처리하기를 설명한다.




5장 표준 라이브러리 기본 에서는


라이브러리 는 표준적인 언어 기능에 코드 에서

자유롭게 호출할 수 있는 명령어다.


형과 함수, 내장 라이브러리 와 모듈 로 나눌 수 있다.


함수는 특정 입력이 주어지면 사전에 정해진 처리를 실행하고,

결과를 반환하는 구조다.


형은 코드 내부에서 다룰 수 있는 값의 종류를 결정하는 구조다.

형에 기반한 값은 객체 또는 인스턴스 라고 한다.


임포트 는 대상 모듈을 익는다.



문자열 길이를 불러오려면 내장 함수 len을 사용한다.


문자열의 대소 문자를 변환하는 메서드,

부분적인 문자열 값을 꺼내려는 인덱스/슬라이스 구문을 사용한다.


문자의 종류를 판단하는 메서드, 문자열 검색 메서드,

문자열 앞뒤에 있는 공백을 제거하는 메서드,


지정된 부분 문자열을 포함하는 in 연산자,

문자열을 특정한 구분 문자로 분할하는 split 메서드,


리스트 를 결합하는 join 메서드, 문자열을 치환하는 replace 메서드,

format 메서드 로 지정된 서식 문자열에 기반한 문자열 형식화,

str형 문자열을 bytes형으로 변환하기를 설명한다.



datetime 모듈 은 날짜 및 시간 값을 다룬다.


날짜 및 시간 값 생성, 인스턴스 속성으로 날짜 및 시각 요소 가져오기,

datetime 모듈 로 날짜 및 시간을 가감하기, 날짜 및 시간 값의 차분을 구하기,

날짜 및 시간 값을 비교하기, 날짜 및 시간 값을 형식화하기,

달력 생성하기를 설명한다.




6장 표준 라이브러리 컬렉션 에서는


시퀀스 자료형은 순서대로 놓인 값을 다루기 위한 형이다.


언어에 따라서는 배열 등이라 부르는 구조로,

가장 기본적인 컬렉션이다.


리스트 생성의 기본 개념을 알아본다.


리스트 에서 특정 범위 내 요소를 꺼내려면 슬라이스 구문을 사용한다.


len 함수로 리스트 포함 요소 개수 불러오기, 리스트에 요소를 추가 삭제하기,

리스트 내 요소를 삭제하기, 여러 요소를 추가, 치환, 삭제하기,

리스트 검색하기, 리스트 복제하기, 리스트 연결, 리스트 내용 정렬,


for 루프 로 리스트 에서 값을 순서대로 추리기, 리스트 요소를 True인지 판단하기,

리스트 내 요소를 가공하기, 리스트 내용을 검색하기, 리스트 내 요소를 모으기,

큐 구조체를 구현하기, 이뮤터블 한 리스트 생성하기를 설명한다.



세트(집합)형은 리스트/튜플 처럼 여러 값을 모으기 위한 형이다.


세트 set와 frozenset라는 두 종류의 형을 제공한다.

세트 는 순서를 갖지 않으므로 실행 결과의 순서도 매번 달라진다.


세트 요소 추가/삭제, 열거 등의 기본 조작을 살펴본다.


요소 여부/ 포함 관계 판단, 합집합/차집합/곱집합 구하기,

세트 내포 표기에 대해 설명한다.



사전은 뜻이 같은 키와 값의 쌍으로 관리되는 자료 구조다.


사전 작성, 해시 표, 사전의 키, 사전의 기본 조작,

기본값을 지닌 사전 정의, 사전형 내포 표기를 설명한다.




7장 표준 라이브러리 기타 에서는


정규 표현식, 정규식은 애매한 문자열 패턴을 표현하기 위한 표기법이다.


정규식 패턴 은 정규식으로 표현된 문자열 패턴 이다.

정규식 패턴 이 특정 문자열에 포함될 경우, 정규식 패턴에 매칭된다.


정규식 패턴에 매칭 하는 문자열 검색, 매칭한 모든 문자열 가져오기,

정규식 옵션 으로 매칭 시 동작 제어하기, 정규식에 따른 검색,


정규식으로 문자열 치환하기, 분할하기를 설명한다.



변수는 데이터 를 남길 수 있는 저장 위치가 필요하다.


날짜를 텍스트 파일로 기록하기, 텍스트 파일을 읽고 출력하기,

이진 파일 읽고 쓰기, 탭 구분 형식 텍스트 를 읽고 쓰기,

객체의 직렬화를 설명하다.



os.path/shutil 등 모듈은 파일 시스템 상 폴더/파일을 조작하거나, 정보를 불러온다.


폴더의 파일 정보 가져오기, 하위 폴더/파일 일람 가져오기,

폴더를 새로 만들기, 이름 바꾸기, 삭제하기, 폴더/파일을 복사하기를 설명한다.



네트워크 를 경유해 정보/서비스 에 엑세스 하는 상황이 늘고 있다.

requests 모듈 은 HTTP를 경유해 외부 정보/서비스 에 액세스하기 위한 수단을 제공한다.


requests 모듈, HTTP POST로 데이터 송신하기, JSON 데이터 가져오기를 설명한다.



수학 연산 모듈 및 내장 함수, 난수 생성하는 random 모듈,

자료형 변환/판단, 모듈/클래스 에 포함되는 요소를 설명한다.




8장 사용자 지정 함수 에서는


사용자 지정 클래스, 사용자 지정 함수는 앱 개발자가

직접 클래스/함수를 정의한다.


사용자 지정 함수의 기본 구문, 함수 이름, 실제 인수와 가변 인수,

반환 값을 설명한다.



스코프 는 코드 내부 변수의 유효 범위다.


코드 전체에서 참조 가능한 전역 스코프, 정의된 함수 내부에서만

참조 가능한 지역 스코프 로 분류된다.


전역 스코프 를 갖는 전역 변수, 지역 스코프 를 갖는 지역 변수,

global/nonlocal문으로 함수 내부에서 전역 변수 활용하기,

블록 스코프 를 설명한다.



인수의 기본값, 키워드 인수, 가변 인자 함수, 가변 인자(키워드 인수),

*, **에 따른 인수 전개를 설명한다.



함수에서 반환 값을 튜플 로 묶어 반환하는 것이 일반적이다.


재귀 함수는 자기 자신을 호출하는 함수다.

고급 함수는 함수를 인수 및 반환 값으로 취급하는 함수다.


람다식은 함수를 간단히 표현하기 위한 구조다.




9장 사용자 지정 함수 응용 에서는


데커레이터 는 기존 함수에 기능을 추가하기 위한 구조다.


데커레이터 구문을 활용하면 코드의 가독성이 개선된다.

함수의 결과 캐싱하기, 데커레이터 인수, 클로저 에 대해 설명한다.



제너레이터 는 yield 문을 활용해 값을 변환한다.


yield 문, 소수를 구하는 제너레이터, 제너레이터 의 주요 메서드,

제너레이터 에서 다른 제너레이터 를 호출하고 열거하기,

제너레이터 식에 대해 설명한다.



모듈 은 필요에 따라 이용하는 사용자 지정 함수다.


모듈 의 정의, 모듈 의 임포트, 모듈 의 검색, 임포트 작성,

패키지 에 대해 설명한다.




동기 처리는 호출된 특정한 처리를 마친 후 다음 처리가 호출되는 것이다.

코루틴, 동기 I/O, 태스크 의 작성과 실행,을 설명한다.



문서화는 함수/형의 사양을 코드 내부 주석으로 작성한다.


문서화의 기본, Sphinx, docstring, 함수 어노테이션을 설명한다.




10장 객체지향 구문 에서는


객체지향 프로그래밍 은 객체를 중심으로 코드 를 작성하는 기법이다.


클래스 를 기반으로 객체를 생성한 후 조작 및 조합해 나간다.

새 클래스 저의, 인스턴스 변수, 메서드, 클래스 메서드,

static 메서드, 클래스 변수를 설명한다.



캡슐화는 사용하는 입장에서 필요 없는 것을 숨기는 것이다.

인스턴스 변수 은폐, 엑세스 메서드 에 대해 설명한다.




상속은 기준이 되는 클래스 멤버 를 계숭하면서,

새 기능을 추가하거나 덮어쓰는 구조다.


상속할 클래스 지정, 클래스 의 상속, 메서드 오버라이딩,

super에 따른 기본 클래스 참조, 다중 상속과 메서드 검색,

믹스인 에 대해 설명한다.



다형성은 동일한 이름의 메서드 로 다른 동작을 실현한다.


다형성의 기초, 추상 메서드, isinstance 함수를 설명한다.





11장 객체지향 구문 응용 에서는


예외 처리는 사전에 발생할 가능성이 있는 오류를 상정하고,

해당 오류가 발생할 경우에 실행할 처리다.


예외 클래스 의 형, finally 절, raise문으로 예외를 발생시키기,

독자적인 예외 클래스 를 설명한다.



특수 메서드 는 특정한 역할을 부여한 메서드 다.


객체의 문자열 표현을 가져오기, 객체끼리 동등 여부를 판단하기,

객체의 해시 값 가져오기, 객체의 사칙연산, 객체 비교, 자료형 변환,

객체의 진위 판별, 어트리뷰트 조작, 디스크립터,

인스턴스 함수 호출을 설명한다.




데이터 클래스 는 클래스 를 표현하기 위한 전용 구조다.


데이터 클래스 의 기초, 필드 커스터마이징, 이뮤터블 한 클래스 선언,

hashable한 클래스 생성, 데이터 클래스 예약 함수를 설명한다.



이터레이터 는 객체의 내용을 열거하기 위한 구조를 갖춘 객체다.


이터레이터 구현, 소수 출력 이터레이터 작성, 특수 메서드를 설명한다.




메타 클래스 는 클래스를 생성하기 위한 클래스 다.


type 함수와 class 명령어, 메타 클래스 의 기본,

싱글턴 패턴, 클래스 데커레이터 를 설명한다.



"독학 파이썬"은 파이썬의 기초 개념, 연산자, 제어문, 

라이브러리, 함수, 객체지향 구문을 다룬다.


"독학 파이썬"은 파이썬의 설치, 환경설정 등 기본부터

객채지향 구문 심화과정 까지 다양한 예제를 통해

자세하게 설명한다.


프레임워크, 라이브러리 를 활용하기 위해 알아야 할

파이썬 에 대한 기초부터 심화까지 다양한 정보를 소개한다.


파이썬 과 다른 프로그래밍 언어와의 차이를 비교 설명하므로,

파이썬 에 대한 정확한 개념을 이해할 수 있다.


각 장 마다 연습문제가 제공되므로, 이해 여부를 확인할 수 있으며,

note에서는 심화된 내용을 설명한다.


기본 이론을 설명하고, 예제를 풀이하고, 연습문제를 풀면서,

파이썬 이론을 이해하고, 핵심적인 내용을 설명한다.


이 장을 잘 이해했는지 체크!에서 이론의 핵심 내용을 정리하고,

전문가에게 묻기, Column 등으로 이론을 심화학습 할 수 있다.


"독학 파이썬"은 단답형, 서술형, 코드 작성 등

다양하게 구성된 연습 문제와 해답을 통해

파이썬 실무를 배우도록 한다.


"독학 파이썬"은 파이썬 이론과 실무까지 이해하면서,

파이썬 을 효과적으로 익히고 개발할 수 있도록 돕는다.


정보문화사 와 컬처블룸 서평단에서 "독학 파이썬"을 증정해주셨다.

감사드린다.


#독학파이썬 #정보문화사 #서평 #윤모린 #야마다요시히로 #컬처블룸 #컬처블룸서평단

#파이썬 #Python #파이썬입문 #파이썬초보 #파이썬문제 #파이썬연습문제 #파이썬해답

#파이썬예제 #파이썬문제은행 #파이썬실습 #파이썬실무 #파이썬찾아보기, #파이썬협업

#파이썬규칙 #파이썬코딩



댓글(0) 먼댓글(0) 좋아요(2)
좋아요
북마크하기찜하기 thankstoThanksTo