- Paperback: 432 pages
- Publisher: Franklin, Beedle & Associates; 2nd edition (May 7, 2010)
- Language: English
- ISBN-10: 1590282418
- ISBN-13: 978-1590282410
- Product Dimensions: 7 x 1.2 x 10 inches
- Shipping Weight: 2 pounds (View shipping rates and policies)
- Average Customer Review: 257 customer reviews
- Amazon Best Sellers Rank: #27,758 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Python Programming: An Introduction to Computer Science 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
There is a newer edition of this item:
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
I've always wanted to learn computer programming since I was a kid, back in the days when computers were the scary things they had in school libraries that adults were scared of getting too close to. I even bought a book on C when I was young enough to only require one digit in my age, and I didn't even own a computer and probably had only used one a few dozen times. I have throughout my life bought, attempted to learn, and failed miserably at learning programming many times. Each time I get terribly stuck and confused. I curse the writers of these books who advertise "programming for the absolute beginner" who I seem so disconnected to. I figured it was me, that maybe I wasn't smart enough, or that for some reason I just could never learn how to do cool stuff with a computer. In my most recent spate I bought another book on computer programming - also on Python. While I did learn to do some stuff, there was still this weird disconnect.
But this book is different and now I finally realize what I had been struggling with: the author *actually explains* what each programming concept does. This sounds silly - of course all programming books do that! But you'd be wrong. Apparently understanding what something like "for i in range(10):" does and what each part is for and called is in the realm of 'computer science.' It sounds stupid, but it took me a while in my first couple of attempts at learning programming in the early days, to realize (because no one actually said it), that a computer program is executed from top to bottom, left to right. A program is more like a player piano. So in the first couple of chapters I was delighted that the author actually says that.
So I guess the difference between this book and all the others I've read is that even if the other books say it's for someone who has never programmed before, they make a lot of assumptions about what you know and what you should have figured out from the context. But this book actually explains each concept as it comes up. In fact, this book is more explanation than code. Which is good because when you're starting out you're full of funny concepts about how programming might work. You don't necessarily understand that when you write "x = 2 + y" and then later change the value of y, that won't actually change the value of x. And the reason you don't know that is because the author didn't bother explaining to you exactly how variables work in Python.
So for learning Python, this is a great resource and exactly what I needed after two decades of on-and-off spates or trying to learn programming. As for learning Computer Science? I guess I don't know a lot about it, but I don't think this would be a great resource. This book doesn't look like it explains binary code to you, or how transistors work, haw NAND and OR circuits work, or any of those sorts of things. There is some of that - it briefly explains the difference between hardware and software, CPU, RAM, etc. But really it's fairly superficial coverage. So the book really should be called Python Programming: A Concept-Based Approach. If I took a class called "an introduction to programming" I would be extremely happy if they assigned this book, but if the class was called "an introduction to computer science" I'd feel as if the class was misrepresented.
Also, I'd also say don't buy this book if you already have a good grounding in some other computer programming language. I think one of those many other books that I struggled with would be a much better fit for you. You won't be lost in poorly defined terminology or zip past what a thing does and focus mostly just on how Python does it. This book will spend way too much time explaining those things you've already figured out by now. If know C++ or Java or whatever, you probably already know the difference between a float and an integer and at the most just need a refresher.
Anyway, I didn't see any other reviews mention these points and I really am glad I found this book. So hopefully you guys will understand better what this book is really all about, which the description does a poor job of doing, in my opinion.
i.e. x=eval(input("type something")) you no longer need the eval like it says in the book. It was rather frustrating at the beginning because a noob like me didn't understand why nothing was working but, google is there to answer all your questions :)
John Zelle introduces you to computer science concepts while keeping it in the context of programming. It is a very text heavy book but in no way is the author verbose. He succinctly explains concepts or describes the inner workings of the provided code without getting bogged down in theory. The programs are interesting and provide a window into the practical application of the Python language. You won't be writing loops just for the sake of writing loops. The author took great care to ensure that the example topics were relatable to the real world. Programming exercises are provided at the end of each chapter and vary in complexity so you can always feel some confidence that you learned something after completing a few of the exercises. Even the exercises that I feel I couldn't even attempt at least were thought-provoking.
I highly recommend this book. Not once did I feel frustrated or have to research on the internet myself to figure out what the author was trying to explain. This book is a wonderful resource for the burgeoning programmer.
It works rather well as a medium to ease non-programmers into the art. A great deal of important vocabulary is weaved into the material. And the graphics module appears to motivate students to push the boundaries and create little GUI apps.
The code works with Python3, and I've had no issues supporting Windows 10, Mac OS, and Ubuntu.