Customers who viewed this item also viewed
Buy new:
$72.28$72.28
FREE delivery Tuesday, February 3
Advertisement
Ships from: Amazon Sold by: Ibook USA
Save with Used - Like New
$58.04$58.04
FREE delivery February 6 - 11
Advertisement
Ships from: bellwetherbooks Sold by: bellwetherbooks
Sorry, there was a problem.
There was an error retrieving your Wish Lists. Please try again.Sorry, there was a problem.
List unavailable.
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the author
OK
Introduction to Computation and Programming Using Python, third edition: With Application to Computational Modeling and Understanding Data 3rd Edition
Purchase options and add-ons
This book introduces students with little or no prior programming experience to the art of computational problem solving using Python and various Python libraries, including numpy, matplotlib, random, pandas, and sklearn. It provides students with skills that will enable them to make productive use of computational techniques, including some of the tools and techniques of data science for using computation to model and interpret data as well as substantial material on machine learning.
All of the code in the book and an errata sheet are available on the book’s web page on the MIT Press website.
- ISBN-100262045788
- ISBN-13978-0262542364
- Edition3rd
- PublisherThe MIT Press
- Publication dateJanuary 5, 2021
- LanguageEnglish
- Dimensions7 x 1.32 x 9.06 inches
- Print length496 pages
Frequently bought together

Deals on related products
Customers also bought or read
- Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming#1 Best SellerPython Programming
Paperback$27.53$27.53Delivery Mon, Feb 2 - Python Programming: An Introduction to Computer Science, Fourth Edition
Paperback$65.00$65.00FREE delivery Mon, Feb 2 - Introduction to Algorithms, fourth edition#1 Best SellerComputer Algorithms
Hardcover$106.70$106.70FREE delivery Tue, Feb 3 - Essential Math for Data Science: Take Control of Your Data with Fundamental Linear Algebra, Probability, and Statistics
Paperback$37.10$37.10FREE delivery Mon, Feb 2 - Introduction to Computation and Programming Using Python, second edition: With Application to Understanding Data
Paperback$91.51$91.51FREE delivery Feb 15 - 21 - Python Data Science Handbook: Essential Tools for Working with Data
Paperback$44.18$44.18FREE delivery Feb 5 - 8 - Python for Data Analysis: Data Wrangling with pandas, NumPy, and Jupyter
Paperback$43.99$43.99FREE delivery Mon, Feb 2 - Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
Paperback$49.50$49.50FREE delivery Mon, Feb 2 - Python 3: The Comprehensive Guide to Hands-On Python Programming (Rheinwerk Computing)
Paperback$39.72$39.72FREE delivery Mon, Feb 2 - Practical Statistics for Data Scientists: 50+ Essential Concepts Using R and Python
Paperback$45.25$45.25FREE delivery Tue, Feb 3 - Effective Python: 125 Specific Ways to Write Better Python (Effective Software Development Series)
Paperback$51.89$51.89$3.99 delivery Feb 23 - 26 - Numerical Python: Scientific Computing and Data Science Applications with Numpy, SciPy and Matplotlib
Paperback$34.99$34.99Delivery Mon, Feb 2 - Mathematics of Machine Learning: Master linear algebra, calculus, and probability for machine learning
Paperback$50.99$50.99FREE delivery Tue, Feb 3 - Practical SQL, 2nd Edition: A Beginner's Guide to Storytelling with Data#1 Best SellerComputer Programming Structured Design
Paperback$21.49$21.49Delivery Mon, Feb 2
Editorial Reviews
Review
“There’s no such thing as the only computer science book you’ll ever need. But if you had to pick only one, this would be a great choice.”
—Hal Abelson, coauthor (with Gerald Jay Sussman) of Structure and Interpretation of Computer Programs
“This is the ‘computational thinking’ book we have all been waiting for! With humor and historical anecdotes, John Guttag conveys the breadth and joy of computer science without compromising technical detail.”
—Jeannette M. Wing, Director of Columbia University’s Data Sciences Institute
About the Author
Product details
- ASIN : 0262542366
- Publisher : The MIT Press
- Publication date : January 5, 2021
- Edition : 3rd
- Language : English
- Print length : 496 pages
- ISBN-10 : 0262045788
- ISBN-13 : 978-0262542364
- Item Weight : 2.19 pounds
- Dimensions : 7 x 1.32 x 9.06 inches
- Best Sellers Rank: #175,511 in Books (See Top 100 in Books)
- #72 in Introductory & Beginning Programming
- #89 in Computer Programming Languages
- #105 in Python Programming
- Customer Reviews:
About the author

John Guttag has spent over thirty years teaching undergraduate computer science courses--first at the University of Southern California and then MIT. He has
a bachelor's and masters degree from Brown University and a doctorate from the University of Toronto.
From January of 1999 through August of 2004, Professor Guttag served as Head of MIT’s Electrical Engineering and Computer Science Department. He served as Associate Department Head from Computer Science from 1993 to 1998.
Professor Guttag currently co-heads the Computer Science and Artificial Intelligence Laboratory’s Networks and Mobile Systems Group. This group studies issues related to computer networks, applications of networked and mobile systems, and advanced software-based medical instrumentation and decision systems. Professor Guttag’s current research is centered on the application of advanced computational techniques to medicine. Current projects include prediction of adverse medical events, prediction of response to therapies, non-invasive monitoring and diagnostic tools, and telemedicine. He has also done research, published, and lectured in the areas of sports analytics, financial analytics, software defined radios, software engineering, mechanical theorem proving, and hardware verification.
Professor Guttag is a Fellow of the ACM and a member of the American Academy of Arts and Sciences.
Related products with free delivery on eligible orders
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on October 2, 2025Format: PaperbackVerified PurchaseA book that teaches you how to think like programmer. It will not teach to code python, but rather it will teach to think logically in a way that you can easily code in any language once you learn the semantics of the language.
- Reviewed in the United States on August 11, 2022Format: PaperbackVerified PurchaseThis book goes very well with the free MITx courses available online. The book covers the same material as the online lectures. So you could do the online lectures without the book. However, the book does go into a little more detail and is a more convenient medium for reviewing concepts than re-watching a lot of video. The focus is not on learning syntax. The focus is on learning how to break down problems and create solutions. So it is ok for people who want to start learning Python. However, it is even better for people who want to learn how to become good problem solvers. You won't master Python by reading this book but it is a fantastic place to start learning some fundamental concepts of computer science
- Reviewed in the United States on April 20, 2021Format: PaperbackVerified PurchaseIt's an excellent read and teaches you almost everything you need to know about computation by way of algorithms, the nature of efficiency of their usage. It's a computer science baptism in fire and water. My only gripe with this book is that it's pretty thin on exercises if that's what you are after. I found Sedgewick's original book Programming in Python - An intermediate approach, to be a very solid resource with a chockful of exercises BUT that book is version outdated (Python 2.x) and their new book uses Java. But I wouldn't be without this book if Python is your thing. Also, Wes McKinney's book is a great one to have for all the tricks you need.
-
Reviewed in the United States on August 22, 2025Format: PaperbackVerified PurchaseMuy bueno para aprender paso a paso programación
- Reviewed in the United States on October 29, 2024Format: PaperbackVerified PurchaseI have to admit that I was a little anxious when waiting for the book, but this book was easy to understand and as well as apply its lessons.
- Reviewed in the United States on October 7, 2022Format: PaperbackVerified PurchaseThis is a wonderful book that does much more than just teach syntax like so many other Python books. Most of it is about using Python as a computational tool plus a lot of material about computer science like object oriented programming, etc.
- Reviewed in the United States on July 14, 2021Format: PaperbackVerified PurchaseI teach in a data science program at AVC, this text is a nice fit! Aspects of Python one needs and computing examples using spyder and objects using classes
- Reviewed in the United States on March 22, 2021Format: PaperbackVerified PurchaseI have read this book start to finish. I love it. This book not only teaches python, but it teaches you many applications that are relevant not only for the aspiring computer scientist but also the curious scientist. I actually have given this book as a gift - twice.
Top reviews from other countries
Nicholas OatridgeReviewed in the United Kingdom on January 7, 20215.0 out of 5 stars Definitive text for learning computer science through Python
Format: PaperbackVerified PurchaseWhen the socialite Kylie Jenner asked on Twitter "Can you guys please recommend books that made you cry?", the response from one follower was "Data Structures and Algorithms in Java (2nd Edition)".
It is true books about coding are rarely easy going. However there are some that, through the clarity of thought and precision of expression, are satisfying to struggle with. "The C Programming Language (2nd Edition)" by Kernighan and Ritchie from 1988 springs to mind, the book that brought us "Hello, World!".
For that most accessible of computer languages, Python, there is a wealth of excellent books published to introduce the language. However in its 3rd Edition, "Introduction to Computation and Programmimg Using Python" by John Vogel Guttag takes some beating.
The book was initially developed from material used on a single semester course at MIT, using Python to introduce Computer Science. It has since been expanded considerably. Although it works well as a text for formal education, it can also be used alongside MIT's hugely successful and highly recommended (free) MOOCs, 6.00.1x and 6.00.2x or as a primer for somebody wanting to learn or improve their Python with a view to using it in a scientific or social science setting. In particular this is an excellent primer for those wanting to work in the field of data science or machine learning, especially if their formal exposure to algorithms, probability and statistical inference is limited. The latest version includes a chapter on the pandas library, supplementing material in the previous edition that touched on numpy and scipy, and it covers plotting (using matplotlib) more extensively than in the 2nd Edition.
This is not a dry tome. Throughout the book, Guttag's sense of humour and erudition shines through. His asides cover everything from Babbage to baseball, from Ptolemy to Turing. Each chapter summarises the terms introduced in the chapter and there is an excellent Python 3.8 quick reference guide at the end of the book. As would be expected, the book is copiously indexed and cross-referenced, accompanying code is available to download and most of the material can be supplemented with videos available on YouTube.
The book covers subjects such as object-oriented programming, dynamic programming and algorithmic complexity and introduces some of the most important algorithms in the field of computer science. The book falls short of discussing other important machine learning libraries, such as sklearn or tensorflow, does not address Python's support for functional programming and does not cover important commercial tools such as database management systems or graphical user interfaces. However Guttag covers a lot of well-paced ground in the book's 637 pages, by the end of which you will have become competent in using Python to perform systematic problem solving, data analysis and computational modelling to address real world challenges.
When the socialite Kylie Jenner asked on Twitter "Can you guys please recommend books that made you cry?", the response from one follower was "Data Structures and Algorithms in Java (2nd Edition)".5.0 out of 5 stars
Nicholas OatridgeDefinitive text for learning computer science through Python
Reviewed in the United Kingdom on January 7, 2021
It is true books about coding are rarely easy going. However there are some that, through the clarity of thought and precision of expression, are satisfying to struggle with. "The C Programming Language (2nd Edition)" by Kernighan and Ritchie from 1988 springs to mind, the book that brought us "Hello, World!".
For that most accessible of computer languages, Python, there is a wealth of excellent books published to introduce the language. However in its 3rd Edition, "Introduction to Computation and Programmimg Using Python" by John Vogel Guttag takes some beating.
The book was initially developed from material used on a single semester course at MIT, using Python to introduce Computer Science. It has since been expanded considerably. Although it works well as a text for formal education, it can also be used alongside MIT's hugely successful and highly recommended (free) MOOCs, 6.00.1x and 6.00.2x or as a primer for somebody wanting to learn or improve their Python with a view to using it in a scientific or social science setting. In particular this is an excellent primer for those wanting to work in the field of data science or machine learning, especially if their formal exposure to algorithms, probability and statistical inference is limited. The latest version includes a chapter on the pandas library, supplementing material in the previous edition that touched on numpy and scipy, and it covers plotting (using matplotlib) more extensively than in the 2nd Edition.
This is not a dry tome. Throughout the book, Guttag's sense of humour and erudition shines through. His asides cover everything from Babbage to baseball, from Ptolemy to Turing. Each chapter summarises the terms introduced in the chapter and there is an excellent Python 3.8 quick reference guide at the end of the book. As would be expected, the book is copiously indexed and cross-referenced, accompanying code is available to download and most of the material can be supplemented with videos available on YouTube.
The book covers subjects such as object-oriented programming, dynamic programming and algorithmic complexity and introduces some of the most important algorithms in the field of computer science. The book falls short of discussing other important machine learning libraries, such as sklearn or tensorflow, does not address Python's support for functional programming and does not cover important commercial tools such as database management systems or graphical user interfaces. However Guttag covers a lot of well-paced ground in the book's 637 pages, by the end of which you will have become competent in using Python to perform systematic problem solving, data analysis and computational modelling to address real world challenges.
Images in this review
MitchelReviewed in Mexico on March 3, 20235.0 out of 5 stars A great resource to learn computation and programming.
Format: PaperbackVerified PurchaseThis is not a book for the ones who want to learn how to write lines of code or learn python's syntax, this is rigorous material therefore it's highly likely that the reader spends considerable mental energy and some time through this book, however, the reader gathers all that is needed to understand computational systems and write programs as a computational scientist would do.
LuchoReviewed in Germany on January 8, 20265.0 out of 5 stars 5 stars
Format: PaperbackVerified PurchaseBought this book to use with the edX course. Highly recommended
BradReviewed in the United Kingdom on December 31, 20224.0 out of 5 stars Nice book
Format: PaperbackVerified PurchaseThis is a decent book by a cool professor, but I think it could have explored Python's quirks a little bit more deeply, and still maintain it's introductory status.
-
Adan Lopez PeñaReviewed in Mexico on January 25, 20261.0 out of 5 stars Maltratado
Format: PaperbackVerified PurchaseLlegó maltratado.























![Computer Networking Bible: [3 in 1] The Complete Crash Course to Effectively Design, Implement and Manage Networks. Including Sections on Security, Performance and Scalability](https://m.media-amazon.com/images/I/41H4YJnxKgL._AC_SR100,100_QL65_.jpg)

