효율적 개발로 이끄는 파이썬 실천 기술 (파이썬에 숨겨진 힘을 이용해 개발 효율을 높이자!)

효율적 개발로 이끄는 파이썬 실천 기술 (파이썬에 숨겨진 힘을 이용해 개발 효율을 높이자!)

$25.03
Description
파이써닉한 개발자로 거듭나고 싶은 분께 유익합니다!
이 책은 이제부터 파이썬을 시작하고자 하는 프로그래밍 경험자들에게 가장 적합한 파이썬 입문서입니다. 평소 파이썬을 사용하고 있는 분들도 더욱 자신감을 갖고 파이썬을 쓸 수 있도록 실력을 한 단계 업그레이드하는 데 활용할 수 있습니다.

파이썬의 개발 배경에서 시작해 파이썬을 구성하는 요소, 언어의 설계 방식, 구현상의 특징, 단순한 알고리즘뿐만이 아닌 프로그램 작성과 배포의 흐름을 짚어가다 보면 어느새 파이썬을 지금보다 효과적으로 사용할 수 있는 아이디어를 얻을 수 있을 것이고, 이로써 여러분의 프로그래밍 능력을 한층 강하게 만들어줄 것입니다.
저자

스야마레이

스야마레이(陶山嶺)
일본오이타현출신.히로시마대학대학원에서정보공학박사과정을수료했다.학생시절에파이썬을만난후그커뮤니티의사상과분위기에사로잡혔으며,이를통해기술적인기초지식은물론,커뮤니티활동방법까지많은것을익혔다.PyConJP2015에일반참가자로참가했던것이계기가되어PyConJP2016부터스태프나발표자로도참가하고있다.취업을계기로상경하게되었으나,현재는히로시마현오노미치시의무카이지마에서완전재택업무중이다.

목차

CHAPTER1파이썬이란어떤언어인가?1
1.1프로그래밍언어로서의특징3
1.1.1간단하고읽기쉬운동적타입언어3
1.1.2하위호환성중시5
1.1.3풍부한표준라이브러리6
1.1.4다양한용도로이용6
1.2파이썬의역사와현황7
1.2.1파이썬자체의진화8
1.2.2파이썬을둘러싼환경의변화9
1.3파이썬커뮤니티의특징10
1.3.1커뮤니티주체오픈소스소프트웨어10
1.3.2PEP의존재11
1.4정리15

CHAPTER2파이썬설치와개발자를위한편리한기능17
2.1파이썬설치19
2.1.1OS에미리설치되어있는파이썬19
2.1.2macOS에서의이용19
2.1.3Windows에서의이용21
2.1.4Ubuntu에서의이용23
2.1.5도커이용24
2.2파이썬실행28
2.2.1이책에서이용하는파이썬명령어28
2.2.2파이썬인터프리터의두가지모드28
2.2.3대화형모드인터프리터29
2.2.4대화형모드의기본사용법29
2.2.5대화형모드에서자주사용하는내장함수31
2.2.6스크립트실행35
2.2.7python명령어와python3명령어의차이37
2.3정리37

CHAPTER3제어흐름39
3.1기본문법41
3.1.1들여쓰기를사용한블록표현41
3.1.2변수이용43
3.1.3주석45
3.2조건분기47
3.2.1if문-조건을지정해처리를분기함47
3.3루프-처리반복51
3.3.1for문-엘리먼트수만큼처리를반복51
3.3.2while문-조건을지정해처리를반복55
3.3.3break문-루프를벗어남56
3.3.4continue문-다음루프로이동57
3.4예외처리59
3.4.1try문-예외포착60
3.4.2raise문-의도적으로예외를발생시킴65
3.4.3사용자예외정의65
3.4.4with문-정의한클린업처리를반드시실행함66
3.5정리67

CHAPTER4데이터구조69
4.1None-값이존재하지않음을표현71
4.1.1조건식에서의None이용71
4.2논릿값-참/거짓을다룸72
4.2.1bool타입-논릿값을다루는타입72
4.2.2불연산73
4.3숫잣값75
4.3.1숫잣값끼리의연산75
4.3.2숫잣값을다루는내장타입77
4.3.3조건식에서의숫잣값이용80
4.4문자열81
4.4.1str타입-문자열을다루는타입81
4.4.2문자열연산82
4.4.3for문에서의문자열의동작82
4.4.4조건식에서의문자열이용83
4.4.5문자열안에서의변수이용83
4.4.6str타입과매우비슷한bytes타입86
4.5배열-엘리먼트를1열로나열해서다룸87
4.5.1list타입-변경할수있는배열을다루는타입88
4.5.2tuple타입-변경할수없는배열을다루는타입90
4.5.3조건식에서이용되는배열의특성93
4.5.4튜플과리스트의이용구분94
4.6딕셔너리-키와값의세트를다룸94
4.6.1dict타입-딕셔너리를다루는타입94
4.6.2엘리먼트추가와삭제95
4.6.3키를이용한엘리먼트로의접근95
4.6.4키로이용할수있는객체의조건96
4.6.5for문에서의딕셔너리의동작96
4.6.6조건식에서이용할수있는딕셔너리의특성97
4.7집합-유일한엘리먼트의집합을다룸98
4.7.1set타입-변경할수있는집합을다루는타입98
4.7.2frozenset타입-변경할수없는집합을다루는타입100
4.7.3집합연산-합집합,교집합,차집합,대칭차집합100
4.7.4for문에서의집합의동작101
4.7.5조건식에서이용할수있는집합의특성102
4.8컴프리헨션-효율적인시퀀스생성103
4.8.1리스트컴프리헨션-효율적인리스트생성103
4.8.2기타컴프리헨션106
4.9그외타입을나타내는개념106
4.9.1가변객체-정의후값을변경할수있는객체107
4.9.2불변객체-정의후값을변경할수없는객체107
4.9.3컨테이너객체-다른객체에대한참조를가진객체107
4.9.4이터러블객체-for문에서이용할수있는객체108
4.9.5호출가능객체-()를붙여호출할수있는객체108
4.10정리108

CHAPTER5함수109
5.1함수-관련된처리를모음111
5.1.1함수정의와실행111
5.1.2인수를받는함수112
5.1.3함수는객체112
5.1.4함수의반환값113
5.1.5함수의다양한인수115
5.1.6인수리스트언팩-리스트나딕셔너리에저장된값을인수로전달123
5.1.7함수의독스트링123
5.2lambda식-이름이없는함수작성125
5.2.1lambda식정의와실행125
5.2.2lambda식을사용할위치125
5.3타입힌트126
5.3.1타입정보를부여함으로써얻을수있는장점126
5.3.2타입정보부여126
5.3.3타입힌트활용사례-정적분석도구이용128
5.4정리129

CHAPTER6클래스와인스턴스131
6.1파이썬의클래스구조133
6.1.1class키워드를이용한클래스정의133
6.1.2인스턴스만들기134
6.2인스턴스-클래스를기반으로만들어진객체134
6.2.1인스턴스메서드-인스턴스에묶인메서드135
6.2.2인스턴스변수-인스턴스가유지하는변수136
6.2.3인스턴스초기화136
6.2.4프로퍼티-인스턴스메서드를인스턴스변수와같이다룸140
6.2.5클래스와인스턴스의프라이빗속성143
6.3클래스-인스턴스의모형이되는객체144
6.3.1클래스변수-클래스객체가유지하는변수144
6.3.2클래스메서드-클래스에속한메서드146
6.4클래스상속149
6.4.1메서드오버라이드와super()를사용한베이스클래스로의접근149
6.4.2모든객체는object클래스의서브클래스150
6.4.3다중상속-여러베이스클래스를지정150
6.4.4다중상속시주의점151
6.5정리154

CHAPTER7모듈,패키지,이름공간,스코프155
7.1모듈-코드를기술한.py파일157
7.1.1모듈작성157
7.1.2모듈임포트158
7.1.3python3명령어로직접실행하기158
7.2패키지-모듈의집합163
7.2.1패키지작성164
7.2.2패키지안에있는모듈임포트165
7.2.3import문비교168
7.3임포트의구조172
7.3.1모듈검색흐름173
7.3.2sys.path-모듈검색경로173
7.3.3PYTHONPATH-sys.path에검색경로를추가175
7.4이름공간과변수의스코프176
7.4.1이름공간-이름과객체의매핑176
7.4.2스코프-직접접근할수있는영역177
7.5정리185

CHAPTER8내장함수와특수메서드187
8.1내장함수-항상이용할수있는함수189
8.1.1객체타입을조사하는함수189
8.1.2객체속성에관한함수192
8.1.3getattr(),setattr(),delattr()-객체속성조작193
8.1.4이터러블객체를받는함수194
8.1.5기타내장함수200
8.2특수메서드-파이썬이암묵적으로호출하는특별한메서드200
8.2.1__str__(),__repr__()-객체를문자열로표현201
8.2.2__bool__()-객체를논릿값으로평가함202
8.2.3__call__()-인스턴스를함수처럼다룸203
8.2.4속성으로의동적접근204
8.2.5이터러블객체로서동작207
8.2.6컨테이너객체로서동작209
8.2.7기타특수메서드212
8.3정리213

CHAPTER9파이썬의독특한기능들215
9.1제너레이터-메모리효율이높은이터러블객체217
9.1.1제너레이터의구체적인예시217
9.1.2제너레이터구현217
9.1.3제너레이터이용시주의점221
9.1.4제너레이터실제사례-파일내용변환하기223
9.1.5기타이용사례224
9.2데커레이터-함수나클래스명에처리추가224
9.2.1데커레이터의구체적인예시224
9.2.2데커레이터구현226
9.2.3데커레이터실제사례-처리시간측정231
9.2.4기타이용사례232
9.3콘텍스트관리자-with문앞뒤에서처리를실행하는객체233
9.3.1콘텍스트관리자의구체적인예시233
9.3.2콘텍스트관리자실제사례-일시적인로깅수준변경238
9.3.3기타이용사례239
9.4디스크립터-속성처리를클래스로이첩240
9.4.1디스크립터의구체적인예시240
9.4.2디스크립터구현242
9.4.3디스크립터실제사례-프로퍼티캐시245
9.4.4기타이용사례247
9.5정리247

CHAPTER10동시처리249
10.1동시처리와병렬처리-여러처리를동시에수행251
10.1.1순차처리실행251
10.1.2동시처리실행251
10.1.3병렬처리실행252
10.1.4파이썬과동시처리252
10.2concurrent.futures모듈-동시처리를위한고수준인터페이스253
10.2.1Future클래스와Executor클래스-비동기처리캡슐화와실행254
10.2.2ThreadPoolExecutor클래스-스레드기반비동기실행256
10.2.3ThreadPoolExecutor클래스를이용한
10.2.4ProcessPoolExecutor클래스-프로세스기반비동기실행263
10.2.5ProcessPoolExecutor클래스를이용한다중프로세스처리구현263
10.3asyncio모듈-이벤트루프를사용한동시처리수행271
10.3.1코루틴-처리도중에중단,다시시작272
10.3.2코루틴스케줄링과실행276
10.3.3asyncio모듈과HTTP통신279
10.4정리280

CHA

출판사 서평

이책의특징
? 파이썬을처음접한분들에게탄탄하게기초를다질수있는길을제시
? 파이썬소개,자료형등아주기초적인주제로시작하여,중후반부로갈수록다른입문서에서는보기힘든,깊이있는주제를다루고있는독특한구성
? 파이썬의기본적인문법외에도venv,단위테스트,CI,패키지관리등을전체적으로다루며,문법자체보다는해당언어로구현할작업들을큰그림으로살펴볼수있도록함
? 파이썬을사용한웹개발,혹은인공지능,빅데이터분야로가기전에기본실력을기르는활용서로사용할것을추천

이책의대상독자
? 파이썬을처음접하는분
? 파이썬에관심있는모든프로그래머
? 파이썬의개념을다시한번정리하고싶으신분
? 파이썬실력을초급에서중상급으로올리고싶은분