Customers who viewed this item also viewed
Buy new:
-64% $14.22$14.22
FREE delivery Saturday, February 7 on orders shipped by Amazon over $35
Advertisement
Ships from: Amazon Sold by: QCompany
Save with Used - Very Good
$1.64$1.64
$3.98 delivery Tuesday, February 10
Advertisement
Ships from: World of Books (previously glenthebookseller) Sold by: World of Books (previously glenthebookseller)
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.
Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way Series) 3rd Edition
Purchase options and add-ons
You Will Learn Python!
Zed Shaw has perfected the world's best system for learning Python. Follow it and you will succeed-just like the hundreds of thousands of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else.
In Learn Python the Hard Way, Third Edition, you'll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn how software works; what good programs look like; how to read, write, and think about code; and how to find and fix your mistakes using tricks professional programmers use. Most importantly, you'll learn the following, which you need to start writing excellent Python software of your own:
- Installing a complete Python environment
- Organizing and writing code
- Basic mathematics
- Variables
- Strings and text
- Interacting with users
- Working with files
- Looping and logic
- Data structures using lists and dictionaries
- Program design
- Object-oriented programming
- Inheritance and composition
- Modules, classes, and objects
- Python packaging
- Debugging
- Automated testing
- Basic game development
- Basic web development
It'll be hard at first. But soon, you'll just get it-and that will feel great!
This tutorial will reward you for every minute you put into it. Soon, you'll know one of the world's most powerful, popular programming languages. You'll be a Python programmer.
Watch Zed, too! The accompanying DVD contains 5+ hours of passionate, powerful teaching: a complete Python video course!
- ISBN-100321884914
- ISBN-13978-0321884916
- Edition3rd
- PublisherAddison-Wesley Professional
- Publication dateOctober 1, 2013
- LanguageEnglish
- Dimensions7.25 x 9.25 x 0.75 inches
- Print length320 pages
Frequently bought together

Deals on related products
Customers also bought or read
- Learn More Python 3 the Hard Way: The Next Step for New Python Programmers (Zed Shaw's Hard Way Series)
Paperback$37.26$37.26FREE delivery Feb 10 - 11 - Automate the Boring Stuff with Python, 2nd Edition: Practical Programming for Total Beginners
Paperback$30.85$30.85Delivery Feb 25 - Mar 4 - Python for Data Analysis: Data Wrangling with pandas, NumPy, and Jupyter
Paperback$43.99$43.99FREE delivery Sat, Feb 7 - 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 Sat, Feb 7 - Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming#1 Best SellerIntroductory & Beginning Programming
Paperback$27.53$27.53Delivery Sat, Feb 7 - Python Data Science Handbook: Essential Tools for Working with Data
Paperback$44.18$44.18FREE delivery Feb 17 - 26 - Fluent Python: Clear, Concise, and Effective Programming
Paperback$43.99$43.99FREE delivery Sat, Feb 7
From the Publisher
A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code
|
The Next Step for New Python Programmers
|
Quickly Get Productive with Python
|
Become a Python Programmer and Have Fun Doing It
|
The Hands-On, Example-Rich Introduction to Pandas Data Analysis in Python
|
|
|---|---|---|---|---|---|
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
Add to Cart
|
|
| Customer Reviews |
4.4 out of 5 stars 1,039
|
4.6 out of 5 stars 125
|
4.5 out of 5 stars 47
|
4.4 out of 5 stars 78
|
4.5 out of 5 stars 316
|
| Price | $20.93$20.93 | $37.26$37.26 | $39.99$39.99 | $42.77$42.77 | $39.49$39.49 |
| User Experience Level | New to programming and/or Python | Perfect for everyone who’s already started working with Python, including junior developers and seasoned Python programmers upgrading to Python 3.6+ | Although this book is for people who may be new to programming altogether, it also caters to people who want to know how Python works and how it’s fundamentally different 'under the hood.' | For absolute beginners who’ve never written a line of code. | Any level of Python experience (none to fluent) New to data analysis. |
| Learning Approach | You’ll learn Python by working through brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. | Hands-on - you’ll go far beyond the basics and learn how to analyze a concept, idea, or problem and then how to deisgn solutions by working through 52 crafted projects. Also includes access to 12 hours of video files. | Takes you by the hand and teaching by examples that are explained line by line. There is heavy emphasis on examples that are fun and useful, including games, graphics, database applications, file storage, puzzles, and more. You will learn how to think 'Pythonically' and avoid common 'gotchas'. | Friendly, easy, full-color. Each chapter will tell you a bit more about programming. It will show you how to do something, and then invite you to make something of your own by using what you’ve learned. | Introduces key concepts through simple but practical examples, incrementally building on them to solve more difficult, real-world problems. Brings together practical knowledge and insight for solving real problems with Pandas, even if you’re new to Python data analysis. |
| Key Topics | Organizing and writing code; Object-orinted programming; Basic game development; Basic web development | Quick hacks; Data structures; Parsing text; SQL and object relational mapping | In addition to Python fundamentals, this book pays a lot of attention to intermediate and even advanced features, including list comprehension, generators, multidimensional lists (matrixes), and decorators. | Programming fundamentals Advanced programming Useful Python | "Tidy" data; Cleaning and munging data; How to fit your data to models ; Fitting models in other languages |
| Python Versions Covered | Python 3 | Python 3.6 | Python 3.0 with notes about adapting examples to Python 2.0. | Python 2.7 Python 3 | Python 3 (Anaconda) |
Editorial Reviews
About the Author
Zed A. Shaw is the author of the popular online books Learn Python the Hard Way, Learn Ruby the Hard Way, and Learn C the Hard Way. He is also the creator of several open source software projects like Mongrel, Lamson, Mongrel2, and has been programming and writing for nearly 20 years.
Product details
- Publisher : Addison-Wesley Professional
- Publication date : October 1, 2013
- Edition : 3rd
- Language : English
- Print length : 320 pages
- ISBN-10 : 0321884914
- ISBN-13 : 978-0321884916
- Item Weight : 1.15 pounds
- Dimensions : 7.25 x 9.25 x 0.75 inches
- Best Sellers Rank: #897,977 in Books (See Top 100 in Books)
- #739 in Computer Programming Languages
- #807 in Python Programming
- Customer Reviews:
About the author

Zed Shaw is an avid guitar player, programmer, and writer whose books teach people all over the world how to write software. His book Learn Python the Hard Way has been read by millions of people around the world. His software has been used by many large and small companies. His essays are often quoted and read by members of many geek communities. He is an entertaining and lively writer, who is sure to keep you laughing and make you think.
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
East to understand for beginners
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on March 27, 2014Format: KindleVerified PurchaseCompared to most (if not all) programming books, the approach this book takes is unconventional and rewarding. The book starts off with the basics one would expect: strings, text, etc. The difference is, the author does not explain what any on the syntax really means. In fact he says more than once (to paraphrase): Don't worry if you don't understand any of this, just do the exercise (directly copy code from the book) and keep moving. After each exercise, there is a short study drill where you are typically told to make specific changes to the code. Shadows of explanations are sometimes contained in these drills. The end of each exercise is also followed by a QA of "Common Student Questions". Further, early on the author gives some interesting tips for examining the code you just wrote (and probably don't understand) that I had never thought of before and are quite enlightening. In exercise 5, the author explicitly states, "The problem with teaching you programming is that to understand many of my descriptions, you need to know how to do programming already. The way I solve this is I make you do something, and then I explain it later." I cannot agree with this method of teaching a programming language more. At least for my own learning style, it is ideal. As the book progresses, the logical order the exercises are layed out causing things to come together even before he get's into the detailed explanation. Once those detailed explanations are finally introduced, covered, and your are done with this book, you will be better off than with any other beginning book at which point you can comfortably move into more advanced material. A quick note on the authors writing style: he can be very sarcastic and sometimes sounds almost a bit pessimistic, but it is all with humorous undertones that make the book fun to read. I cannot recommend this book enough. After I submit this review, I am on my way to see if he has more books in "Hard Way" series.
EDIT: Regarding complaints of the Kindle version. This happens to be the version of I am reviewing. I you want to use this side by side with an editor and a shell, you may have to shrink the font size as you web browser will (naturally) attempt to squeeze the text into whatever size you narrow your browsers width to. Personally, I am using a tiling window manager under Linux so I can shift things around as needed on a single monitor without decreasing the font size. Another solution is to use two monitors. I don't know what it looks like on my Kindle Paperwhite and don't have it with me at the moment.
- Reviewed in the United States on September 7, 2016Format: KindleVerified PurchaseIf you are brand new to programming, this is a great place to start. The author makes it very clear that his intended audience includes those who have little to no programming experience. If you find yourself in that boat, this is a five-star book.
If you are like me, and know a language or two already, you may be disappointed. You can still learn some useful things from this book, especially if python is a new language for you, but this book wasn't really written for you. Keep that fact in mind. Go through the first ~15 exercises quickly, then skip to about 40-45. I found the sections between these points to be the least relevant for someone with a fair amount of previous experience.
I want to reiterate that I am giving this 5 stars because the author does a good job of accomplishing his stated purpose in writing the book. That does not mean this book is for everyone.
- Reviewed in the United States on February 27, 2014Format: PaperbackVerified PurchaseI have been teaching programming for more than a dozen years and I can't decide if I love or hate this book. The fundamental approach, "type this code and see what happens" is right on the money but all too often the code is followed by the advice to "look up the details on the web." The author does not direct the reader to specific sites (like this book's website -- which contains all the content). Rather, you are sent adrift and told to find your way. As everyone knows the quality of advice across the web is hit or miss and some programming symbols are hard to find. For example in the section called "symbol review" the author suggest looking up operators like ==, {, @, ] or escape sequences like \\ or \a or string formats like %%. I agree that the exercise of trying to find these things is useful but I paid for the book and I want to have the answer key. Similarly, in the section titled "learning to speak object oriented", he introduces randint() but does not say how it works. It is easy to do a web search for it but one of the top five results on Google is just wrong and others require you to know the difference between [0, 10] and (0, 10). The repeated calls to make flashcards makes sense but not if he fails to provide the information that belongs on the cards. While the lack of detailed tables for key features is horrid, the information provided is superb and there are very few typos. Sadly the typos are fixed on the book's website but there is no errata to allow you to correct the hard copy (which will make you nuts when you get to page 133 and there are [ ] where { } belong). I especially appreciated the introduction to Windows PowerShell (and Mac Terminal) which, unlike the rest of the book, does include the definitions for essentially everything covered.
So, while the positives (well thought through progressively more difficult code examples) do outweigh the negatives (lack of a glossary and lack of tables with details) ... barely ... you will likely want to get another reference book to cover the holes in the instruction.
- Reviewed in the United States on August 22, 2016Format: PaperbackVerified PurchaseIf you are trying to learn coding, software and want to learn from a friendly and experience guy but this book... or download it for free and then come back later to buy his other books.
This is not an advanced book for computer science majors or people who know everything, you Stanford know-it-alls need to solve cold fusion and broker Middle East peace vs complaining.
This book has been instrumental in helping me to understand Python with a bit of humor and lots of old fashioned wrote teaching.
To me wrote teaching means read it in a book write it out and look at it three or four times , review what it says while following the instructions for extra credit.
Stop wining and work through the assignments and realize this book is not for everyone.
Top reviews from other countries
DarthVader 👀Reviewed in India on September 19, 20205.0 out of 5 stars Excellent 👌🏾
The book is a great introductory text to python. Unlike the title, the book provides an easy approach to python learning.
The author puts you in the driving seat, contrary to the popular approach of rote learning. You can only learn a new task if you’re motivated; hence the author places the onus on you. Hence he leaves quite a few things for the reader to do and find out, which I’m sure helps learning.
I don’t have a background in computer science at my graduate level. Still I am able to follow the book very easily.
That’s the beauty of Zed Shaw method 👌🏾
#Cons:
None for the book
However the seller is showing inflated MRP in order to make you believe you’re getting a good bargain. I was shown a high price and a discount when placing order; However I got the book at the MRP (photo enclosed).
Amazon needs to discredit such sellers and practices on its portal
The book is a great introductory text to python. Unlike the title, the book provides an easy approach to python learning.5.0 out of 5 stars
DarthVader 👀Excellent 👌🏾
Reviewed in India on September 19, 2020
The author puts you in the driving seat, contrary to the popular approach of rote learning. You can only learn a new task if you’re motivated; hence the author places the onus on you. Hence he leaves quite a few things for the reader to do and find out, which I’m sure helps learning.
I don’t have a background in computer science at my graduate level. Still I am able to follow the book very easily.
That’s the beauty of Zed Shaw method 👌🏾
#Cons:
None for the book
However the seller is showing inflated MRP in order to make you believe you’re getting a good bargain. I was shown a high price and a discount when placing order; However I got the book at the MRP (photo enclosed).
Amazon needs to discredit such sellers and practices on its portal
Images in this review
-
Cliente AmazonReviewed in Spain on February 22, 20174.0 out of 5 stars Se aprende de verdad
Format: PaperbackVerified PurchaseBueno y muy didáctico. Se aprende de verdad. Quizá se ha quedado un poco antiguo en cuanto a la versión de Python utilizada.
Maurizio VadalaReviewed in Canada on July 21, 20155.0 out of 5 stars I started this course through their website as it was ...
Format: PaperbackVerified PurchaseI started this course through their website as it was free but after getting through about half the course I decided the amount of material I've learned was well worth the price of the book so I purchased it. Well worth the price in my opinion but see for yourself and use the free version on their website first.
-
Marcus K.Reviewed in Germany on January 13, 20165.0 out of 5 stars Gar nicht mal so "hard"
Format: PaperbackVerified PurchaseFür einen absoluten Programmieranfänger ein toller Wegbegleiter um diese schöne Sprache zu erlernen. Der Einstieg gelingt mühelos und wenn man parallel die unzähligen Hilfen und Tutorials zu Python im Netz bemüht macht es einfach nur Spaß die ersten Scripte schon nach ein paar Übungen im Buch selbst zu schreiben und sich auch mit eigenen Fragestellungen abseits der Lektüre zu beschäftigen.
Mein Ziel, die Hausautomationssoftware Indigo 6 (sehr zu empfehlen) durch eigene Scripte noch mehr den eigenen Wünschen anzupassen ging voll auf. Außerdem macht es nebenbei sogar Spaß.
Der erfrischende und verständliche Schreibstil des Autors trägt außerdem seinen Teil zum Lernerfolg bei. Langweilige und schwerfällige Bücher zum Thema gibt es schön zu genüge.
EmanueleReviewed in Italy on February 23, 20195.0 out of 5 stars A must have for Python learning
Format: PaperbackVerified PurchaseA high-value book that immediately projects the neophyte into the python dimension, a milestone for all those who want to learn from the scratch.













