책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 파이썬
· ISBN : 9791188621026
· 쪽수 : 484쪽
책 소개
목차
CHAPTER 1 과학 기술 컴퓨팅과 파이썬 1
1.1 데이터로 살펴보는 파이썬의 현재 3
1.2 파이썬 기초 지식 8
1.3 과학 기술 컴퓨팅과 파이썬의 관계 17
1.4 정리 31
CHAPTER 2 제로부터 시작하는시뮬레이터 개발 33
2.1 시뮬레이터 설계하기 35
2.2 기능 분할과 파일 분할 37
2.3 프로그램 작성 40
2.4 정적 코드 분석 50
2.5 단위 테스트 52
2.6 디버깅 61
2.7 프로그램의 최적화 67
2.8 정리 73
CHAPTER 3 IPython과 Spyder 75
3.1 IPython 77
3.2 Spyder 106
3.3 정리 114
CHAPTER 4 파이썬의 기초 115
4.1 작성 스타일 117
4.2 객체와 데이터 타입 124
4.3 연속열형 조작하기 136
4.4 집합 타입과 딕셔너리 타입의 조작 142
4.5 변수와 데이터 145
4.6 얕은 복사와 깊은 복사 154
4.7 연산자와 평가식 158
4.8 흐름 제어 162
4.9 함수 정의하기 170
4.10 모듈과 패키지 179
4.11 네임스페이스와 유효 범위 185
4.12 정리 191
CHAPTER 5 클래스와 객체의 기초 193
5.1 클래스 정의 195
5.2 상속 200
5.3 스태틱 메서드와 클래스 메서드 202
5.4 정보를 은폐하는 방법 204
5.5 클래스와 네임스페이스 206
5.6 정리 210
CHAPTER 6 입력과 출력 211
6.1 콘솔 입출력 213
6.2 파일 입출력의 기본 214
6.3 데이터 파일 입출력하기 217
6.4 pandas의 데이터 입출력 기능 232
6.5 웹상의 정보를 입력받기 242
6.6 정리 244
CHAPTER 7 NumPy 245
7.1 NumPy란? 247
7.2 NumPy의 데이터 타입 251
7.3 다차원 배열 객체 ndarray 254
7.4 유니버설 함수 272
7.5 브로드캐스팅 274
7.6 정리 278
CHAPTER 8 SciPy 279
8.1 SciPy란? 281
8.2 SciPy 활용하기 285
8.3 정리 298
CHAPTER 9 matplotlib 299
9.1 matplotlib이란? 301
9.2 matplotlib 설정하기 304
9.3 matplotlib 활용하기 312
9.4 그 외의 그리기 툴 323
9.5 정리 324
CHAPTER 10 pandas 325
10.1 pandas란? 327
10.2 pandas의 데이터 타입 329
10.3 데이터 처리하기 338
10.4 정리 362
CHAPTER 11 프로그램 최적화 365
11.1 프로그램 최적화의 기본 367
11.2 병목 해소 368
11.3 병렬 처리하기 381
11.4 정리 392
CHAPTER 12 프로그램 최적화 ― 응용 예 393
12.1 고속 라이브러리 활용하기 395
12.2 JIT 컴파일러 사용하기 406
12.3 정리 417
APPENDIX 419
A 참고 문헌 & 학습 자료 421
B 내장 함수와 표준 라이브러리 424
C NumPy 함수의 레퍼런스 429
책속에서
이용자 수가 적은 도구는 나중에 지원이 중단될 우려도 있고, 그 도구를 사용하기 위한 노하우 역시 얻기 어렵다는 문제가 있다. 파이썬의 이용 실적은 아직 C/C++, Fortran, MATLAB 등에 비해 떨어지지만 유럽이나 미국을 중심으로 과학 기술 컴퓨팅에 사용하고 있는 사용자 수가 최근 급격히 증가하고 있다는 것을 1.1절에서 소개한 바 있다. 이 책에서도 소개할 NumPy, SciPy, matplotlib, pandas 등이 개발되어 널리 쓰이게 되면서 보급이 한층 더 순풍을 타고 있다.
통합 개발 환경인 Spyder(3.2절 참조)에서도 그림 2.7에서 보듯 정적 코드 분석을 수행할 수 있다. Spyder에는 Pyflakes와 pep8로 분석한 결과를 에디터에 표시해주는 기능이 있다. 이 분석은 미리 지정한 시간만큼 간격을 두고 자동으로 실행되므로 거의 실시간으로 코드의 잠재적 오류를 확인할 수 있다. 또 pylint를 사용한 결과를 수동으로 표시하는 것도 가능하다.