장바구니 담기 close

장바구니에 상품을 담았습니다.

The Python 3 Standard Library by Example

The Python 3 Standard Library by Example

  • 더그헬먼
  • |
  • 에이콘출판
  • |
  • 2020-06-30 출간
  • |
  • 1656페이지
  • |
  • 188 X 235 X 66 mm
  • |
  • ISBN 9791161754307
판매가

58,000원

즉시할인가

52,200

카드할인

0원(즉시할인 0%)

적립금

2,900원 적립(5%적립)

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
52,200

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




★ 이 책에서 다루는 내용 ★

■ string, textwrap, re(정규 표현식), difflib를 이용한 텍스트 다루기
■ 자료 구조 사용: 열거형, 컬렉션, 배열, heapq, 큐, struct, copy 등
■ functools와 itertools, contextlib를 이용한 매끄럽고 정확한 알고리즘 구현
■ 날짜/시간 및 고급 수학 작업 다루기
■ 데이터 저장과 압축
■ json과 dbm, sqlite를 포함하는 데이터 교환과 지속성 이해
■ 암호화를 사용한 메시지 사인과 검증
■ 프로세스와 스레드에 대한 동시성 작업 관리
■ 테스트와 디버그, 컴파일, 프로파일, 언어, 임포트, 패키지 도구
■ 인터프리터를 사용한 실시간 상호작용 또는 환경 조절

★ 이 책의 대상 독자 ★

중급 수준의 파이썬 프로그래머를 위해 구성됐다. 대부분의 소스코드는 검증을 거쳤고, 일부 코드의 경우에만 줄별로 설명한다.
모든 절은 각 모듈의 기능에 초점을 맞추며, 소스코드와 결과를 통해 완벽한 독립 예제 프로그램으로 설명된다. 각 기능은 최대한 간략하게 작성돼 독자는 여타 지원 코드에 집중력이 흐트러지는 일 없이 모듈이나 함수에 집중할 수 있을 것이다.
다른 언어에 경험이 많은 프로그래머도 이 책을 통해 파이썬을 배울 수 있지만, 파이썬 언어를 소개하고자 기획하지는 않았다. 파이썬 프로그래밍을 코딩해본 경험이 조금 있다면 예제를 공부할 때 유용할 것이다. 일부 절에서는 네트워크 소켓 프로그래밍이나 hmac 암호화 같은 특정 도메인 지식을 요구할 것이다.
예제를 설명하는 기본 정보는 책 속에 있지만 표준 라이브러리에 있는 모듈이 담당하는 주제의 범위를 모두 다루기에는 한 권의 책으로 불가능하다. 각 모듈의 말미에는 추가 정보와 읽을거리에 대한 추천 참고 목록이 있고, 온라인 리소스와 RFC 표준 문서, 관련 서적을 포함한다.

★ 이 책의 구성 ★

이 책은 종합 레퍼런스 가이드(http://docs.python.org 참고)를 보완하며, 가이드에 기술된 기능을 설명하고자 완전한 기능을 하는 예제 프로그램을 제공한다. 모듈을 모아 각 장을 구성해 참고하고자 하는 개별 모듈을 찾기 쉽게 했고, 주제별로 편하게 탐색할 수 있게 했다. 드물지만 처음부터 끝까지 이 책을 읽는 독자를 위해 완벽하지는 않지만 아직 다루지 않은 모듈의 경우 앞쪽 내용에서 참조할 일은 최소화시켰다.

★ 옮긴이의 말 ★

처음 이 책의 원서의 엄청난 페이지를 보고 놀랐던 기억이 난다. 하지만 그보다 근거 없는 도전 의식이 불타 올라 번역을 시작하게 됐다. ‘아무리 페이지 수가 많아도 파이썬인데 뭐?’라는 생각과 함께. 그런데 이 책을 번역하는 것보다 내가 직접 쓰는 게 더 좋지 않을까 하는 생각이 들 정도로 긴 여정이 되고 말았다. 그리고 이제는 파이썬 앞에서 겸손해졌다.
일부 시각에서 사실 파이썬은 언어 자체가 간결하지 못한 취미용 언어 정도로 치부된 측면도 있다. 하지만 이 책을 번역하면서 파이썬이 이렇게 방대한 표준 라이브러리를 품고 있었나 놀랐다. 과연 모든 라이브러리 사용법을 하나하나 아는 사람이 있을까하는 의구심도 생겼다. 이런 레퍼런스류의 책을 비치하고 있지 않다면 매번 구글링을 해야 하지 않을까라는 생각도 들었다. 왜 구글과 같은 큰 기업을 필두로 빅데이터와 인공지능에서 파이썬이 맹활약을 할 수 있는지 어느 정도 이해가 됐다.

개인적으로 6장을 번역하면서 배운 점을 활용해 번역 자체 작업 시간을 줄여주는 스크립트를 작성했던 점이 참 재미있었다. 기존에는 일일이 텍스트를 번역해야 하는 수작업이었는데, 파이썬으로 번역 자동화 프로세스를 만들어 보는 재미를 느꼈고 작업 시간도 줄일 수 있었다. 책은 파이썬 3를 기본으로 다루고 있기 때문에 파이썬 2는 전혀 고려하지 않았다는 것을 양해 바란다.

파이썬 2가 없어질 것이라는 이야기가 나온 지 수 년이 지났지만 아직도 쓰이는 것을 보면 파이썬 3도 앞으로 10년 이상은 더 쓰이지 않을까라는 생각도 해본다. 파이썬은 매우 쉽다는 장점이 있다. 하지만 이것이 표준 라이브러리를 바로바로 사용할 수 있다는 뜻은 아니다. 라이브러리는 그 자체로 또 다시 배워야 하는 과정이 필요하다. 다만 독자 여러분께 드리고 싶은 말은 모든 내용을 읽어보고 기억하면서 공부할 책이 아니므로 겁먹을 필요는 없다는 것이다. 레퍼런스 책이기 때문에 필요한 부분만 빨리 찾아서 밑줄 그어가며 실무에 당장 적용해보면 된다. 본인이 필요한 부분만 하나씩 공부하다 보면 어느 날 모인 내용만 다시 정리해도 어마어마한 분량이 될 것이다. 파이썬의 기본 라이브러리에 대한 설명을 부족하게나마 무리 없이 옮겨 적었기를 바라며 독자들의 건투를 빈다.

권석기


목차


1장 텍스트
1.1 string: 텍스트 상수와 템플릿
1.2 textwrap: 텍스트 문단 포매팅
1.3 re: 정규 표현식
1.4 difflib: 시퀀스 비교

2장 자료 구조
2.1 enum: 열거 타입
2.2 컬렉션: 컨테이너 데이터 타입
2.3 array: 연속된 고정 타입 자료
2.4 heapq: 힙 정렬 알고리즘
2.5 bisect: 리스트를 정렬된 상태로 유지
2.6 queue: 스레드 안전한 FIFO 구현
2.7 struct: 바이너리 자료 구조
2.8 weakref: 객체에 대한 임시 참조
2.9 copy: 객체 복사
2.10 pprint: 자료 구조를 보기 좋게 출력

3장 알고리즘
3.1 functools: 함수를 다루기 위한 도구
3.2 itertools: 반복자 함수
3.3 operator: 내장 연산자에 대한 함수형 인터페이스
3.4 contextlib: 콘텍스트 매니저 유틸리티

4장 날짜와 시간
4.1 time: 시간
4.2 datetime: 날짜와 시간 값 다루기
4.3 calendar: 날짜 관련 작업

5장 수학 계산
5.1 decimal: 고정, 부동소수점 계산
5.2 fractions: 유리수
5.3 random: 의사 난수 생성기
5.4 math: 수학 함수
5.5 statistics: 통계 연산

6장 파일 시스템
6.1 os.path: 플랫폼 독립적 파일명 관리
6.2 pathlib: 객체로서의 파일 시스템 경로
6.3 glob: 파일명 패턴 매칭
6.4 fnmatch: 유닉스 스타일 Glob 패턴 매칭
6.5 linecache: 텍스트 파일 효율적으로 읽기
6.6 tempfile: 임시 파일 시스템 객체
6.7 shutil: 고수준 파일 작업
6.8 filecmp: 파일 비교
6.9 mmap: 메모리 맵 파일
6.10 codecs: 문자열 인코딩과 디코딩
6.11 io: 텍스트와 바이너리, Raw 스트림 입출력 도구

7장 데이터 보존과 교환
7.1 pickle: 객체 직렬화
7.2 shelve: 객체 보존
7.3 dbm: 유닉스 키-값 데이터베이스
7.4 sqlite3: 임베디드 관계형 데이터베이스
7.5 xml.etree.ElementTree: XML 조작 API
7.6 csv: 쉼표로 구분한 값 파일

8장 데이터 압축과 보관
8.1 zlib: GNU zlib 압축
8.2 gzip: GNU zip 파일 읽고 쓰기
8.3 bz2: bzip2 압축
8.4 tarfile: Tar 아카이브 접근
8.5 zipfile: ZIP 아카이브 접근

9장 암호 기법
9.1 hashlib: 암호화 해싱
9.2 hmac: 암호 메시지 서명과 검증

10장 프로세스, 스레드, 코루틴을 통한 병렬 작업
10.1 subprocess: 추가 프로세스 생성
10.2 signal: 비동기 시스템 이벤트
10.3 threading: 프로세스 내에서 병렬 작업 관리
10.4 multiprocessing: 프로세스를 스레드처럼 관리
10.5 asyncio: 비동기적 I/O, 이벤트 루프, 병렬 작업 도구
10.6 concurrent.futures: 병렬 작업 풀 관리

11장 네트워킹
11.1 ipaddress: 인터넷 주소
11.2 socket: 네트워크 통신
11.3 selectors: I/O 멀티플랙싱 추상화
11.4 select: 효율적인 I/O 대기
11.5 socketserver: 네트워크 서버 생성

12장 인터넷
12.1 urllib.parse: URL을 컴포넌트로 나눔
12.2 urllib.request: 네트워크 리소스 액세스
12.3 urllib.robotparser: 인터넷 스파이더 접근 컨트롤
12.4 base64: 바이너리 데이터를 아스키로 인코드
12.5 http.server: 웹 서비스 구현을 위한 베이스 클래스
12.6 http.cookies: HTTP 쿠키
12.7 webbrowser: 웹 페이지 보여주기
12.8 uuid: 보편적인 고유 식별자
12.9 json: 자바스크립트 객체 표기법
12.10 xmlrpc.client: XML-RPC용 클라이언트 라이브러리
12.11 xmlrpc.server: XML-RPC 서버

13장 이메일
13.1 smtplib: 단순 메일 전송 프로토콜 클라이언트
13.2 smtpd: 메일 서버 구현
13.3 mailbox: 이메일 아카이브 관리
13.4 imaplib: IMAP4 클라이언트 라이브러리

14장 애플리케이션 빌딩 블록
14.1 argparse: 커맨드라인 옵션과 인자 파싱
14.2 getopt: 커맨드라인 옵션 파싱
14.3 readline: GNU readline 라이브러리
14.4 getpass: 보안 패스워드 프롬프트
14.5 cmd: 줄 단위 명령 프로세서
14.6 shlex: 셸 스타일 구문 파싱
14.7 configparser: 구성 파일 작업
14.8 logging: 상태, 에러, 정보 메시지 보고
14.9 fileinput: 커맨드라인 필터 프레임워크
14.10 atexit: 프로그램 종료 콜백
14.11 sched: 이벤트 스케줄러

15장 국제화와 지역화
15.1 gettext: 메시지 카탈로그
15.2 locale: 문화 지역화 API

16장 개발자 도구
16.1 pydoc: 모듈의 온라인 도움말
16.2 doctest: 문서를 통한 테스트
16.3 unittest: 자동화된 테스팅 프레임워크
16.4 trace: 프로그램의 흐름 추적
16.5 traceback: 예외와 스택 추적
16.6 cgitb: 상세한 트레이스백 보고서
16.7 pdb: 대화형 디버거
16.8 profile과 pstats: 성능 분석
16.9 timeit: 파이썬 코드의 실행 시간 측정
16.10 tabnanny: 들여쓰기 검증
16.11 compileall: 소스 파일 바이트 컴파일
16.12 pyclbr: 클래스 브라우저
16.13 venv: 가상 환경
16.14 ensurepip: 파이썬 패키지 인스톨러 설치

17장 런타임 기능
17.1 site: 사이트 구성
17.2 sys: 시스템 종속적인 구성
17.3 os: 운영체제 종속적인 기능의 액세스
17.4 platform: 시스템 버전 정보
17.5 resource: 시스템 리소스 관리
17.6 gc: 가비지 컬렉터
17.7 sysconfig: 인터프리터 컴파일 타임 구성

18장 언어 도구
18.1 warnings: 치명적이지 않은 경고
18.2 abc: 추상 베이스 클래스
18.3 dis: 파이썬 바이트코드 역어셈블러
18.4 inspect: 라이브 객체 검사

19장 모듈과 패키지
19.1 importlib: 파이썬의 임포트 메커니즘
19.2 pkgutil: 패키지 유틸리티
19.3 zipimport: ZIP 아카이브에서 파이썬 코드 로드

부록 A 포팅 노트
A.1 참조
A.2 새 모듈
A.3 이름이 바뀐 모듈
A.4 제거된 모듈
A.5 더 이상 사용하지 않게 된 모듈
A.6 모듈 변경 사항 요약

부록 B 표준 라이브러리 확장
B.1 텍스트
B.2 알고리즘
B.3 날짜와 시간
B.4 수학 함수
B.5 데이터 영속성과 교환
B.6 암호화
B.7 프로세스와 스레드, 코루틴과 함께 하는 동시성
B.8 인터넷
B.9 이메일
B.10 애플리케이션 빌딩 블록
B.11 개발 도구

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.