이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제 청년패스
파이썬 코딩의 기술 51 Better Python Code
똑똑하게 코딩하는 법
베스트
IT 모바일 top100 1주
가격
33,000
10 29,700
YES포인트?
1,650원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요
배송안내
서울특별시 영등포구 은행로 11(여의도동, 일신빌딩) 변경
배송비?
무료

이미 소장하고 있다면 판매해 보세요.

  •  해외배송 가능?
  •  문화비소득공제 가능

이 분야의 이벤트

이 상품의 태그

상세 이미지

책소개

목차

1장 잘못된 방식으로 순환하기

__1.1 (드물지만) 순환을 위해 목록 생성하기
__1.2 색인을 순환하는 대신 enumerate( ) 사용하기
__1.3 dict.items( )가 필요할 경우 dict.keys( )로 순환하지 않기
__1.4 순환 중 객체 변형
__1.5 while 순환보다 for 순환 사용하기
__1.6 ‘순환과 절반’을 위한 바다코끼리 연산자
__1.7 zip( )으로 다중 반복 가능 객체 간소화하기
__1.8 zip(strict=True)과 itertools.zip_longest( )
__1.9 정리

2장 동등성과 동일성의 혼동

__2.1 클로저의 늦은 연결
__2.2 불리언 논리 값에 대한 지나친 검증
__2.3 x == None 비교하기
__2.4 가변 기본 매개 변수에 대한 오해
____2.4.1 첫 번째 방법, 클래스 사용하기
____2.4.2 두 번째 방법, None 보초 값 사용하기
____2.4.3 세 번째 방법, 상태 생성기의 이점 이용하기
__2.5 가변 객체에 대한 복사 대 참조
__2.6 (재사용이 있는 상황에서) is와 == 혼동하기
__2.7 정리

3장 파이썬의 여러 가지 함정

__3.1 이름 지정
____3.1.1 표준 라이브러리 모듈과 동일한 파일 이름 사용하기
____3.1.2 import * 사용 피하기
____3.1.3 비어 있거나 지나치게 일반적인 except 문
__3.2 단순 문자열 연결의 2차 시간 복잡도
__3.3 파일을 열 때 상황 정보 관리자 사용하기
____3.3.1 첫 번째 위험
____3.3.2 두 번째 위험
____3.3.3 취약성 수정하기
__3.4 .sort( )와 sorted( )의 선택적 매개 변수 key
__3.5 불확실한 키에는 dict.get( ) 사용하기
__3.6 정리

4장 파이썬 고급 활용

__4.1 type(x) == type(y) 비교하기
__4.2 (다시 한번) 이름 지정
____4.2.1 내장 이름의 재정의
____4.2.2 보호된 속성에 직접 접근하기
__4.3 사용 빈도가 낮은 기능에 주목하기
____4.3.1 f 문자열 디버깅
____4.3.2 가공자의 우아한 마법
____4.3.3 itertools (충분히) 사용하기
____4.3.4 more-itertools 제3자 라이브러리
__4.4 자료형 주석은 실행 시간 자료형이 아니다
____4.4.1 자료형 주석은 실행 시간 제약이 아니다
____4.4.2 typing.NewType()을 실행 시간 자료형으로 오해하기
__4.5 정리

5장 할 수 있다고 해서 해야 한다는 뜻은 아니다

__5.1 메타클래스
__5.2 원숭이 패치
__5.3 읽기 메서드와 설정 메서드
__5.4 허락보다 용서받는 것이 더 쉽다
__5.5 구조적 패턴 대조
__5.6 정규 표현식과 재앙적 역추적
__5.7 정리

6장 적절한 데이터 구조 선택하기

__6.1 collections.defaultdict
__6.2 collections.Counter
____6.2.1 해결책
____6.2.2 잘못
__6.3 collections.deque
____6.3.1 해결책
____6.3.2 잘못
__6.4 collections.ChainMap
____6.4.1 해결책
____6.4.2 잘못
__6.5 데이터 클래스와 명명된 튜플
____6.5.1 명명된 튜플 사용하기
____6.5.2 정적과 동적
____6.5.3 데이터 클래스
__6.6 효과적인 구상 연속 순서열
__6.7 정리

7장 데이터 구조의 잘못된 사용

__7.1 반복된 목록 탐색의 2차 시간 복잡도
__7.2 목록 중간에서 요소를 제거하거나 추가하기
____7.2.1 좀 더 효율적인 데이터 구조
__7.3 문자열은 문자열의 반복 가능한 객체 집합
__7.4 상수를 사용하는 대신 enum을 (자주) 사용하기
__7.5 많이 알려지지 않은 사전 메서드 익히기
____7.5.1 객체를 정의하는 사전
____7.5.2 정기적으로 발생하는 잘못으로 돌아가기
__7.6 JSON과 파이썬은 서로 깔끔하게 변환되지 않는다
____7.6.1 JSON에 대한 몇 가지 배경
____7.6.2 왕복에 실패하는 데이터
__7.7 자신만의 데이터 구조 만들기
____7.7.1 자신만의 것을 만드는 것이 나쁜 생각일 때
____7.7.2 자신만의 것을 만드는 것이 좋은 생각일 때
____7.7.3 핵심 요약
__7.8 정리

8장 보안

__8.1 무작위성의 종류
____8.1.1 암호학적 무작위성을 위해 secrets 사용하기
____8.1.2 재현 가능한 무작위 분포
__8.2 ‘안전한’ 소스 코드에 비밀번호나 기타 비밀 정보 넣기
__8.3 ‘자신만의’ 보안 기제 만들기
__8.4 마이크로 서비스에 SSL/TLS 사용하기
__8.5 제3자 라이브러리 requests 사용하기
__8.6 데이터베이스 API를 사용하지 않을 경우의 SQL 주입 공격
__8.7 안전하다는 가정을 확인하기 위해 assert 사용하지 않기
__8.8 정리

9장 파이썬에서의 수치 계산

__9.1 IEEE-754 부동 소수점 숫자 이해하기
____9.1.1 NaN(그리고 다른 부동 소수점 숫자)을 비교하기
____9.1.2 NaN과 statistics.median()
____9.1.3 부동 소수점 숫자의 순진한 사용: 결합법칙과 분배법칙
____9.1.4 부동 소수점 숫자의 순진한 사용: 입자성
__9.2 숫자 자료형
____9.2.1 금융 계산에 부동 소수점 숫자를 사용하지 않기
____9.2.2 수치 데이터 자료형의 비직관적인 동작
__9.3 정리

부록 다른 책에서 읽을 만한 주제

__A.1 테스트 주도 개발
__A.2 동시성
__A.3 패키징
__A.4 자료형 검사
__A.5 수치 및 데이터프레임 라이브러리

찾아보기
파이썬 코딩의 기술 51가지 찾아보기

저자 소개 2

데이비드 메르츠

관심작가 알림신청
 

David Mertz, Ph.D.

25년이라는 오랜 시간 동안 파이썬 커뮤니티의 일원으로 활동하고 있으며, 파이썬 언어의 발전을 밀접하게 따라오면서 버전별 변경 사항에 대해 기조 강연을 하고, 프로그래밍 초보자, 다른 언어 기반의 개발자, 데이터 과학자에게 파이썬을 가르쳤다. 개발자와 데이터 과학자에게 기계 학습과 과학 컴퓨팅을 교육하는 KDM Training의 설립자로, Anaconda Inc.를 위한 데이터 과학 교육 프로그램을 만들었으며 수석 교육자로 활동하였다. 깊은 신경망(deep neural network)의 등장과 함께 로봇 지배자를 교육하는 데도 눈을 돌려 D.E. Shaw Research에서 8년
25년이라는 오랜 시간 동안 파이썬 커뮤니티의 일원으로 활동하고 있으며, 파이썬 언어의 발전을 밀접하게 따라오면서 버전별 변경 사항에 대해 기조 강연을 하고, 프로그래밍 초보자, 다른 언어 기반의 개발자, 데이터 과학자에게 파이썬을 가르쳤다. 개발자와 데이터 과학자에게 기계 학습과 과학 컴퓨팅을 교육하는 KDM Training의 설립자로, Anaconda Inc.를 위한 데이터 과학 교육 프로그램을 만들었으며 수석 교육자로 활동하였다. 깊은 신경망(deep neural network)의 등장과 함께 로봇 지배자를 교육하는 데도 눈을 돌려 D.E. Shaw Research에서 8년 동안 근무했다. 6년 동안 PSF의 이사로 활동했으며, 지금도 PSF의 상표 위원회와 과학 파이썬 작업 그룹의 공동 의장을 맡고 있다. 2000년대에 쓴 「매력적인 파이썬(Charming Python)」과 「XML 문제(XML matters)」 칼럼은 파이썬 세계에서 가장 널리 읽힌 글이다. 팩트(Packt), 오라일리(O'Reilly), 애디슨 웨슬리(Addison-Wesley)를 통해 집필서를 출간했으며, 여러 국제 프로그래밍 회의에서 기조연설을 했다.

데이비드 메르츠의 다른 상품

28년 차 소프트웨어 개발자. SK텔레콤에서 싸이월드, 티맵 등 주요 모바일 설루션을 개발했으며, 사우디아라비아를 비롯한 중동 국가와 인도네시아, 멕시코 등지에서 서버와 단말을 아우르는 뱅킹 결제 시스템을 구축했다. 이후 K팝, 블록체인, 애자일 설루션 등 다양한 분야에서 CTO와 개발 이사를 역임했다. 현재도 AI를 포함한 최신 기술 실무 현장에서 개발에 매진하고 있다. 저서로는 《실전 안드로이드 프로그래밍》, 《갤럭시 S & 안드로이드폰 완전정복》, 《갤럭시 S 안드로이드폰 어플 활용 백서》, 《입문자를 위한 Windows CE Programming》 등이 있으며, 번역서로는
28년 차 소프트웨어 개발자. SK텔레콤에서 싸이월드, 티맵 등 주요 모바일 설루션을 개발했으며, 사우디아라비아를 비롯한 중동 국가와 인도네시아, 멕시코 등지에서 서버와 단말을 아우르는 뱅킹 결제 시스템을 구축했다. 이후 K팝, 블록체인, 애자일 설루션 등 다양한 분야에서 CTO와 개발 이사를 역임했다. 현재도 AI를 포함한 최신 기술 실무 현장에서 개발에 매진하고 있다. 저서로는 《실전 안드로이드 프로그래밍》, 《갤럭시 S & 안드로이드폰 완전정복》, 《갤럭시 S 안드로이드폰 어플 활용 백서》, 《입문자를 위한 Windows CE Programming》 등이 있으며, 번역서로는 《디자인 패턴의 아름다움》, 《컴퓨터 밑바닥의 비밀》, 《파이썬 코딩의 기술 51》, 《소프트웨어 개발에 ChatGPT 사용하기》, 《프롬프트 엔지니어링의 비밀》, 《7가지 프로젝트로 배우는 LLM AI 에이전트 개발》 등이 있다.

김진호의 다른 상품

품목정보

발행일
2024년 07월 15일
쪽수, 무게, 크기
384쪽 | 568g | 152*225*16mm
ISBN13
9791140714056

출판사 리뷰

간단하고 깔끔하게, 명확하고 효율적으로, 파이썬을 사용하라.

파이썬을 파이썬답게 사용하자

widgets.set_count(widgets.get_count() + 1) 파이썬 전문가가 이 코드를 보았다면 훨씬 직관적이고 알기 쉬운 widgets.count += 1을 사용했을 것이다. 많은 파이썬 코드가 잘못되었거나 우아하지 않거나 다른 언어를 사용하는 방식을 사용한 탓에 파이썬답지 않다.

파이썬 전문가가 되자

일반 코더와 파이썬 전문가를 구분하는 기준은 무엇일까? 단순히 관행을 아는 것에 그치지 않고, 파이썬이 가진 다양한 측면의 장점과 함정을 이해하여 왜 반드시 이 방법을 사용해야 하는지 아는 것이다. 파이썬의 강력함, 개성, 철학을 잘 이해하고 코드를 작성해보자.

함정, 문제, 시행착오를 피하자

각 장마다 파이썬 개발자들이 쉽게 빠질 수 있는 잘못, 함정, 오류를 제시하고, 이를 피하는 방법과 솔루션을 간결하고 명확한 코드 예제로 설명했다. 모든 문제는 저자가 실제 코드에서, 때로는 필드에서, 때로는 코드 리뷰 중에 발견한 문제다. 버그를 피하고 효율적인 코드를 작성하는 방법을 배우자.

[지은이 서문]

이 책을 처음부터 끝까지 모두 읽을 필요는 없습니다. 물론 전부 읽는 것이 여러분에게 도움이 될 것임은 자명합니다. 각 장은 관련된 개념을 묶어서 다루고 있지만 서로 독립적이며, 각 장의 절도 자체적인 완결성을 가지고 있습니다. 필요한 부분만 읽을 수 있으며, 그렇다 해도 각각의 내용은 매우 흥미로울 것입니다. 일부는 다른 부분에 비해 더 높은 수준의 내용을 다루기도 하지만, 쉬운 내용을 다룬다고 생각되는 부분에서도 여러분이 알지 못했던 새로운 뉘앙스를 발견할 수 있고, 반대로 고급 내용을 다루는 부분에서도 접근하기 쉬우며 깨달음을 주는 내용을 발견할 수 있을 것입니다.

[옮긴이 서문]

파이썬 세계의 유명 인사인 데이비드 메르츠가 집필한 『Better Python Code』를 우리말로 옮기면서 느낀 것은 파이썬은 개발자가 어떻게 사용하느냐에 따라 완전히 다른 모습을 보여 주는 언어라는 것입니다. 이 책은 일반적으로 우리가 파이썬 개발 서적에서 기대하는 내용인 파이썬 프로그래밍 언어의 풍부한 가능성을 탐구하거나 그 안에서 좀 더 효율적이고 우아한 코드를 작성하는 방법을 제시하는 것에서 그치지 않고, 파이썬 개발자로서 어떤 것이 올바른 개발 방법인가에 대해 끊임없이 고민하고 개선해 나가도록 채찍질합니다. 그리고 저자는 깊은 지식과 풍부한 경험을 바탕으로 개발자들이 파이썬 코드의 질을 한 단계 높일 수 있는 방법을 세심하게 안내합니다.

추천평

수년간 시행 착오를 거쳐야 알 수 있는 중요한 문제들을 실수 없이 빨리 배우고 성장하라. - 쿠샬 다스 (CPython 핵심 개발자)
찾기 어려운 버그를 피하고 싶은 초보자, 더 효율적인 코드를 작성하려는 전문가, 모두를 위한 책 - 마크-앙드레 렘버그 (전 EuroPython 의장)
잘 정리되어 있고 읽기 쉽습니다. 코드의 스타일과 성능을 개선하는 데 귀중한 자료입니다. 특히 보안 섹션은 모범 사례에 대한 실용적이고 높은 수준의 개요를 제공합니다. 예제는 간결하고 명확하게 설명되어 있습니다. - 독자 (Amazon)
실제 프로젝트 상황과 예제로 파이썬다운 방식의 코딩 스타일을 강조하고, 파이썬의 핵심 철학인 ‘아름다움이 추함보다 낫다’를 몸소 실천하는 코드 작성법을 소개합니다 - 조현석 (소프트웨어 엔지니어)
좀 더 효율적인 데이터 구조를 만드는 법, 네이밍 규칙, 메타클래스부터 심지어 보안까지 실제 코드 예시로 상세하게 설명해 줍니다. - 이장훈 (데브옵스 엔지니어)
보통 파이썬 개발자라면 귀찮다고 넘어갔을 법한 문법이나 개발 패턴에 대해서 쉽게 소개하고 있습니다. 데이터 구조나 보안, 수치 연산과 관련된 내용도 다루고 있어서, 다양한 분야에서 파이썬을 사용하면서 놓칠 법한 부분을 잘 서술해준 것 같습니다. - 강찬석 (9년 차 소프트웨어 엔지니어)
책에서 제시한 예제들이 매우 실용적이었고, 현업에서 바로 코드에 적용할 수 있는 많은 아이디어를 제공해주었습니다. 책의 구성과 설명이 매우 명확하고 직관적이며, 각 주제는 체계적으로 정리되어 있어 처음부터 끝까지 순서대로 읽어가면서 쉽게 이해할 수 있었습니다. - 이석곤 (빅데이터 엔지니어)
‘내가 파이썬을 제대로 쓰고 있을까?’라는 생각을 한 번이라도 해본 적이 있다면 꼭 한번 읽어 보면 좋은 책입니다. 코드를 작성하며 흔히 저지를 수 있는 실수들과 다양한 주제를 다루기 때문에 실무에 활용하는 데 좋은 지침서가 될 것 같습니다. - 이호철 (프론트엔드 개발자)

리뷰/한줄평11

리뷰

8.8 리뷰 총점

한줄평

8.0 한줄평 총점

클린봇이 부적절한 글을 감지 중입니다.

설정
29,700
1 29,700