Buy new:
$54.51$54.51
FREE delivery February 15 - 17
Advertisement
Ships from: Amazon Sold by: Happy Trade Store
Save with Used - Like New
$25.98$25.98
FREE delivery February 12 - 17
Advertisement
Ships from: ThriftBooks-Phoenix Sold by: ThriftBooks-Phoenix
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 authors
OK
Think Python: How to Think Like a Computer Scientist 2nd Edition
Purchase options and add-ons
If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for Python 3.
Through exercises in each chapter, you’ll try out programming concepts as you learn them. Think Python is ideal for students at the high school or college level, as well as self-learners, home-schooled students, and professionals who need to learn programming basics. Beginners just getting their feet wet will learn how to start with Python in a browser.
- Start with the basics, including language syntax and semantics
- Get a clear definition of each programming concept
- Learn about values, variables, statements, functions, and data structures in a logical progression
- Discover how to work with files and databases
- Understand objects, methods, and object-oriented programming
- Use debugging techniques to fix syntax, runtime, and semantic errors
- Explore interface design, data structures, and GUI-based programs through case studies
- ISBN-101491939362
- ISBN-13978-1491939369
- Edition2nd
- PublisherO'Reilly Media
- Publication dateJanuary 26, 2016
- LanguageEnglish
- Dimensions7 x 0.5 x 9 inches
- Print length292 pages
There is a newer edition of this item:
Frequently bought together

Deals on related products
Customers also bought or read
- MATLAB: A Practical Introduction to Programming and Problem Solving
Paperback$46.00$46.00FREE delivery Tue, Feb 10 - Automate the Boring Stuff with Python, 2nd Edition: Practical Programming for Total Beginners
Paperback$30.86$30.86Delivery Feb 28 - Mar 4 - Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming#1 Best SellerIntroductory & Beginning Programming
Paperback$27.53$27.53Delivery Mon, Feb 9 - Python for Data Analysis: Data Wrangling with pandas, NumPy, and Jupyter
Paperback$43.99$43.99FREE delivery Mon, Feb 9 - Fluent Python: Clear, Concise, and Effective Programming
Paperback$43.99$43.99FREE delivery Mon, Feb 9 - Deep Learning (Adaptive Computation and Machine Learning series)
Hardcover$54.65$54.65FREE delivery Feb 11 - 12 - Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming
Paperback$15.58$15.58Delivery Feb 17 - 21 - Python Pocket Reference: Python In Your Pocket (Pocket Reference (O'Reilly))
Paperback$13.09$13.09Delivery Mon, Feb 9 - Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython
Paperback$65.00$65.00FREE delivery Feb 15 - 19 - Introduction to Computation and Programming Using Python, third edition: With Application to Computational Modeling and Understanding Data
Paperback$72.28$72.28FREE delivery Mon, Feb 9 - Python All-in-One For Dummies (For Dummies: Learning Made Easy)
Paperback$24.77$24.77Delivery Mon, Feb 9 - Artificial Intelligence: A Modern Approach, Global Edition
Paperback$67.90$67.90FREE delivery Feb 11 - 13 - 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 9 - Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming
Paperback$13.65$13.65Delivery Mon, Feb 9 - Learn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way Series)
Paperback$20.93$20.93Delivery Feb 13 - 19 - Think Like a Programmer: An Introduction to Creative Problem Solving
Paperback$25.89$25.89Delivery Feb 18 - 28
From the brand
-
See more books in the series
-
More From O'Reilly
-
Sharing the knowledge of experts
O'Reilly's mission is to change the world by sharing the knowledge of innovators. For over 40 years, we've inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.
Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.
Editorial Reviews
About the Author
Allen Downey is a Professor of Computer Science at Olin College of Engineering. He has taught at Wellesley College, Colby College and U.C. Berkeley. He has a Ph.D. in Computer Science from U.C. Berkeley and Master's and Bachelor's degrees from MIT.
Product details
- Publisher : O'Reilly Media
- Publication date : January 26, 2016
- Edition : 2nd
- Language : English
- Print length : 292 pages
- ISBN-10 : 1491939362
- ISBN-13 : 978-1491939369
- Item Weight : 2.31 pounds
- Dimensions : 7 x 0.5 x 9 inches
- Part of series : Learning Python
- Best Sellers Rank: #645,201 in Books (See Top 100 in Books)
- #162 in Object-Oriented Design
- #442 in Computer Programming Languages
- #506 in Python Programming
- Customer Reviews:
About the authors

Discover more of the author’s books, see similar authors, read book recommendations and more.

Allen Downey is a Professor Emeritus at Olin College and Principal Data Scientist at PyMC Labs. He is the author of several books related to programming and data science, including Probably Overthinking It, Think Python, Think Stats, and Think Bayes. The idea behind these books is that if you know how to program, you can use that skill to learn other things.
Allen has a Ph.D. from U.C. Berkeley and M.S. and B.S. degrees from MIT. He has taught at Olin College, Colby College and Wellesley College.
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 AmazonCustomers say
Generated from the text of customer reviewsSelect to learn more
Reviews with images
I think, therefore I am
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on February 12, 2019One of the best books I've read on programming so far. It's well written, easy to understand, very affordable, and there are some extra resources available to you as well, which I found really useful.
The only caveat I would give is that this may not be the best choice for the math-averse, as many of the exercises involve dealing with math problems. I would not consider myself particularly mathematically inclined and can still get through them with some effort, and enjoy the challenge of learning something new and putting some long-unused brain cells to work, but it may be frustrating if you really hate math. There is always the option to skip exercises you don't like, of course.
I definitely recommend this book to anyone interested in programming, or wanting to learn Python, beginners included. I had a little programming experience coming in, and breezed through the first few chapters, but the exercises quickly build in difficulty so even after a few chapters, I think all but quite experienced programmers will find some that are challenging and help you build proficiency in the language.
- Reviewed in the United States on September 24, 2024Format: PaperbackVerified PurchaseGreat book. Helped me through two CS classes. The pages are tattered from going through it, but I'm grateful that I bought it.
- Reviewed in the United States on September 23, 2022Format: PaperbackVerified PurchaseVery effectively teaches the basics of Python and programming methodology. I don't think I've read a better book for coding novices. If you work through this book fully, including the exercises, you can go from zero to being a decent programmer very quickly.
- Reviewed in the United States on December 17, 2023Format: PaperbackVerified PurchaseI used this book as a supplement to a class I was taking in Python. It was good as a supplement, but I do worry that it would not be sufficient for someone who was only using this book or someone who had not had a bit of a background in doing some programming stuff. The exercises are also made for someone who has a decent understanding of math and personally I stopped trying the exercises after the first few chapters because of that, as well as having other problems that had been assigned to me for the course I was taking.
- Reviewed in the United States on April 3, 2021Format: PaperbackVerified PurchaseThis is a fine book for someone who wants an introduction to Python programming. I think it is good for someone who is uncertain about what Python is all about. It will definitely give the reader an indication about the language and its structure.
If you are looking to learn Python in-depth, this is not the book for you. However, if you want a survey of Python - what it can do, how it works (generally) - this is a good book.
I like the easy-to-understand language used in this book. The author does not make any assumptions about prior programming knowledge.
The book just scratches the surface of Python. It runs though a large number of topics, touching each with just enough to give the reader an understanding of the bigger picture. However, it doesn't do a deep dive on any topic in particular.
Overall, as a primer it's a great book. But be prepared to go deeper with other resources if you want to become even a good novice Python programmer.
- Reviewed in the United States on March 8, 2023Format: PaperbackVerified PurchaseThe change was subtle at first; flipping each page and reading each line, day after day. It was when I reached the 6th chapter that the evolution moved from metal to a physical realization. I prefer my sun drenched back porch to my cold office, my skin is segmented into hexagonal scales, and my wife loves the new fork in my tongue. Out of five dead mice, I give it a ten and that’s saying something because we are talking breakfast, lunch, and dinner for at least a week.
The change was subtle at first; flipping each page and reading each line, day after day. It was when I reached the 6th chapter that the evolution moved from metal to a physical realization. I prefer my sun drenched back porch to my cold office, my skin is segmented into hexagonal scales, and my wife loves the new fork in my tongue. Out of five dead mice, I give it a ten and that’s saying something because we are talking breakfast, lunch, and dinner for at least a week.
Images in this review
- Reviewed in the United States on October 12, 2025Format: PaperbackVerified PurchaseI bought this for an online Introduction to Programming class, not knowing how much the language had changed. If you are new to Python - it is an evolving language, so get the latest edition you can. This was a waste of my money, but would not have been if I needed to know older syntax, and only older syntax.
- Reviewed in the United States on January 18, 2024Format: PaperbackVerified PurchaseI bought this book for one of my college courses. It's a really good book. It explains the coding well and uses good examples. Bought book new and received in great condition.
Top reviews from other countries
Howar StugardReviewed in Italy on July 31, 20215.0 out of 5 stars Good book
Format: PaperbackVerified PurchaseItem was as advertised.
apnkppReviewed in Mexico on November 29, 20184.0 out of 5 stars A good book.
Format: PaperbackVerified PurchaseThis book cover all basics of the python programming language as it attempts to develop good programming practices and skills. It is a good book to be used as reference but if you have some experience with the language and want to take your skills to a different level then you need another book.
IvanReviewed in Canada on April 3, 20175.0 out of 5 stars A really good book, explain a lot of stuff
A really good book, explain a lot of stuff, it is well written, plain language, clear style and very practical pace. A decent combination of introductory book to python and something more thoughtful, more theoretical about coding in general.
rachelbee14Reviewed in Germany on January 24, 20195.0 out of 5 stars The book you didn't think you needed
Format: PaperbackVerified PurchaseFor anyone not coming from a programming background this book is a lifesaver. The author explains concepts clearly and it is truly a joy to read
One person found this helpfulReport
Taufik HidayatReviewed in Singapore on November 20, 20205.0 out of 5 stars Perfect
Format: PaperbackVerified PurchaseAwesome..
Awesome..5.0 out of 5 stars
Taufik HidayatPerfect
Reviewed in Singapore on November 20, 2020
Images in this review


















![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)





