과학 및 수치 컴퓨팅은 연구, 엔지니어링, 분석 분야에서 각광을 받고 있다. 컴퓨터 산업의 혁명은 지난 수십 년간 컴퓨터 전문가들에게 새롭고 강력한 도구를 제공했다. 이 도구는 이전에 불가능했던 규모와 복잡도를 가진 연산 작업을 가능하게 했다. 그 결과, 새로운 분야와 산업이 우후죽순처럼 생겨났다. 발전은 여전히 진행 중이며 하드웨어, 소프트웨어, 알고리즘이 계속 향상됨에 따라 새로운 기회가 창출되고 있다.
이 움직임을 궁극적으로 가능하게 해준 기술은 최근 수십 년간 개발된 강력한 컴퓨터 하드웨어다. 그러나 연산 작업에 이용되는 소프트웨어 환경은 전산 전문가에게 있어 (하드웨어보다 중요하지 않은지는 몰라도) 여전히 중요하다.
이 책은 수치 컴퓨팅에서 인기 있고 빠르게 성장하는 환경인 Python 프로그래밍 언어로 컴퓨터 작업을 하기 위한 라이브러리와 그 계산 환경의 확장을 위한 생태계에 관한 것이다. 전산은 이론과 실제 모두에 있어 경험과 전문 지식을 요하는 활동으로, 수학과 과학적 사고에 대한 확고한 이해가 바탕이 돼야 효과적으로 작업할 수 있다.
프로그래밍 훈련은 전산에 있어 매우 중요하다. 이 책은 Python 프로그래밍 언어 및 주변 컴퓨팅 환경을 이용한 과학적 계산 방법 사이의 가교 역할을 하고자 두 주제를 모두 다룬다. 또한 독자들이 Python 프로그래밍에 대한 기초적인 지식과 수학, 수치 해석에 대한 사전 지식을 갖고 있다고 가정한다.
이 책의 초점은 Python을 이용한 실질적인 계산 문제 해결 방법을 소개하는 데 있다. 각 장은 주제 이론에 대한 간략한 소개, 표기법을 비롯한 기본적인 기법 설명, 알고리즘을 알려준다. 그러나 모든 기법이 일관적으로 기술돼 있지 않으며, 각 장의 주제에 익숙하지 않은 독자들을 위해 각 장의 끝에 참고 문헌을 나열했다. Python 프로그래밍 경험이 없는 독자들은 Python 프로그래밍 언어 자체에 초점을 맞춘 책과 함께 읽는 것이 좋다.