Python Series – Best Books For Learning Python

This series here is for people who want to venture into open source programming. PYTHON is one of the most popular language these days that everyone is getting into. Many tech giants are moving their technologies to Python from Java. One of the best things about Python is that it is damn easy to learn. It is what you do once you get going that matters. So, let’s get right into the subject of this post – the best resources available on the web for learning Python.

BOOKS:

BEGINNER:

1. Learn Python The Hard Way:

Hands down the best book written for complete beginners. I have personally used this book and it beats every other book out of the water when it comes down to teaching complete beginners Python from scratch.

It would help if you have considerable programming experience prior to using this book.

A HELPFUL REVIEW FROM AMAZON:
I love and hate this book

I 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.

2. Learning Python by Mark Lutz:

This is another awesome book. If you use this book after you have gone through Learn Python The Hard Way book, it will be the best guide for you. Even if you are starting off with this book, you will find it easy to start from scratch.

A HELPFUL REVIEW FROM AMAZON:
Finally the book that got me going!

I was a total noob that wanted to learn to program and was advised to learn Python, since I want to do some text analysis. I started out with Learn Python the Hard Way (to mind numbing), tried CodeCademy.com (to general) and watched a lot of videos on youtube (too fragmented) and read a lot of different specialized books on Python (like Python for Data Analysis). THIS book is finally the one that step-by-step in a good old school-teacher way is the perfect fit for me. Gentle, start at page 1 and go one page at the time forward – and it all makes sense and is perfectly balanced.I strongly recommend this book for anyone that is absolutely new to programming and have no ambitions to be a programmer, but only yo learn to use code as a tool.
This is a book that some of my open source programmer-friends used to suggest me when I started off with Python. This book will help you learn the Python Standard Library with examples for everything in it. It would help you if you have the basics of python and syntax level knowledge covered before you start with this book.
A HELPFUL REVIEW FROM AMAZON:
A lot of information at a great price; I suggest a hard copy because you’ll want to flip through it quickly

If you have ever worked with Python, you have probably come across Python Module of the Week (PyMOTW) or virtualenvwrapper. Both are the work of Doug Hellmann. He has now brought to life The Python Standard Library By Example. If Python gives you the batteries, Hellmann gives you not only an instruction manual but the “on” switch to get you going right away.The Python documentation is really great, but might leave some with a “some assembly required” feeling. The book’s examples aim to be more complete, while still covering a serious breadth of the Standard Library. Do not expect to use all of the examples in your project without some modification, customization and expansion. After all, they are miniature projects in their own right.By the Numbers:

It weighs in at a whopping 1300-something pages across 19 chapters. This translates roughly to a 2-inch print copy, or a 7.3 MB PDF. The accompanying source is 5.5 MB after unzipping and contains 113 example modules. The examples were tested with Python 2.7. Some of the examples would port to Python 3 easily, others not so much. Even before reading it, I was pretty impressed and somewhat reluctant. Some of those numbers might not be very meaningful as far as the book’s usefulness, but it should give you a sense of how much material is covered. In my opinion, you get a lot for the price.

What I Thought:

I use Python as my primary language and I admit that I had never heard of some of the modules covered (e.g. anydbm, asyncchat, pyclbr, just to name a few). Not only that, the modules which I had previously used were probably in the minority and smaller still are the modules which I use regularly. This is in part due to changes made in Python 2.7 that I have not absorbed, but also because there are plenty of places for cool features to hide out if you are not looking for them. I can say that after being exposed to the material, I have a better understanding of some of the most common modules and have added a few others to my arsenal.

I would recommend this book to any serious Python programmer who wants to get the most of what Python has to offer. If you are just starting with Python, but comfortable with another language, you might pick up quite a bit from just a quick skim of everything. You can then drill down into the parts which seem most applicable or interesting. However, if you are new to programming, this is probably not the book for you (as mentioned in the book’s Introduction, and several other reviews I found).

I received an electronic review copy from the publisher in exchange for my review. The past two or three days my home internet has been down. This book was great to have around in a time of crisis. But due to the nature of the material I think I would personally make more use of it as a hard copy. I admit to not reading it cover to cover, but I cannot imagine anyone wanting to do so. That said, it is definitely a great addition to my library.

ADVANCED:

This book is very helpful for those who are getting into Data Science, Statistical Analysis, etc. Advanced Python programming includes different areas like Web Development, Data Science, Data Analysis, Predictive Modeling, etc. This one’s by far one among the best books for Data Analysis.
REVIEW
A book about tools that fills a need in scientific computing

Python For Data Analysis is a book about tools. Python is an excellent general purpose language that has developed some niche applications, science being one of them due to some excellent libraries such as NumPy, SciPy, IPython, Matplotlib, and increasingly Pandas — which Wes created. Collectively these tools form the basis of the “scientific computing stack” and are utilized by anyone who gets their hands dirty with data.

To steal from the book, Wes states, “This book is concerned with the nuts and bolts of manipulating, processing, cleaning, and crunching data in Python. It is also a practical introduction to scientific computing in Python, tailored for data-intensive applications. This is a book about the parts of the Python language and libraries you’ll need to effectively solve a broad set of data analysis problems. This book is NOT (author’s emphasis) an exposition on analytical methods using Python as the implementation language.”

This is a book for any level of professional, researcher, or academic working with data. You could be a beginner who wants to get started, a professional coming from discipline rooted in another language like Matlab, or even someone seasoned in data-manipulation with Python who wants to get more work done in less time with greater ease.

While Pandas is the main focus of the book, sections dedicated to IPython (a shell for interactive execution) and NumPy (Matlab-like vectorized arrays) means there is something for everyone. For example, you might already use IPython, but not to its fullest potential. Wes shows how to be more efficient using the interactive debugger.

Amazon limits their ratings to 5-stars, but if I gave a star for every time I learned something new that made my analysis easier this book would be off the charts!

Raspberry Pi application development is a hot topic these days. This book packs a punch in whatever it has. The book provides you a lot of very good examples and takes you to a level where you can create games, applications, user-friendly interfaces, do embedded programming kinda stuff to control external electronics.
REVIEW
Review of the paper back

It amazes me how in around 150 pages this book packs so much in. Although I’ve been using both Python and my Raspberry Pi for a while now, this book has so many little nuggets of information that I see it as being equally useful to both a complete beginner and an expert too. I wish it had been available a few months ago, since it would have saved me considerable time and effort spent finding out how to get to grips with my Raspberry Pi. Without bamboozling you with jargon, this book quickly demystifies what is required to get the most out of your raspberry pi.The first two chapters of the book give a comprehensive introductory guide that many beginners wiill warm to, it includes getting your Raspberry Pi working with a helpful inventory of the extra parts needed and choices available.

Then Chapter 3 takes you straight into learning how to program with Python. There is a great balance between a rapid pace and just the right amount of instruction & guidance needed. Chapter 4 takes you on a whistle-stop tour through the real power tools in Python, dictionaries, tuples and lists before arriving at Chapter 5 object oriented programming. Chapter 6 simplifies how to interact with file handling and creating a very basic internet search engine. Chapters 7 and 8 describe how to create visual environments controlled by Python with Tkinter and Pygame tutorials.

Chapters 9 through 11 is where the real exciting activity grows with robot interfacing projects. This is clearly a real strength of the author. There are comprehensive instructions and explanations how to build clocks, and robot controlled vehicles with ultrasonic obstacle detectors.

This book ideally suited me since I get impatient with lengthy explanations that I don’t require. Instead, it gets you straight into doing things with your Raspberry Pi in an efficient and clear manner with immediately successful results. If you are pressured for time and want to find out quickly what you can do with your Raspberry Pi, this book is the ideal solution. I like to think that an adult working through this with children would find the book an excellent guide and resource to have. The non-linear style of the book means you can ‘dip in’ to different sections at different times. This book comes highly recommended and is sure to be in demand.

This is the best book for learning Data Structures and Algorithms with Python. This book teaches you methods to solve problems using data structures and algorithms.
This book will help you go a long way in understanding Object Oriented problem solving with Python.
REVIEW
I’m not even done with this one, but I was pretty eager to get a review in since it has been such a great help for me. I’ve been coding in Python for a little over a year now and I’d say I have a pretty good grasp of the language and it’s features. However, without having ever taken a formal CS or Math course in college (years ago), many books that cover algorithms and data structures are impenetrable for me (e.g. Introduction to Algorithms).Problem Solving with Algorithms and Data Structures Using Python, so far, has been a completely different story. The explanations for algorithm analysis and data structures (so far) have not required that I dig too deep into my mathematics vault of knowledge. If you have some experience with programming, this is the perfect introduction. The videos also help to solidify concepts that may have initially been hard to grasp. I cannot wait to finish this one.
 
Loading Facebook Comments ...

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>