Contents
The demand for Python in 2020 is going to be huge
Python books are hot right now. In our article “Python is the hottest IT skill for 2020” we looked at the continuing growth in salaries, job postings, and usage of Python, and the popularity of books and courses for learning Python, Machine Learning, and Data Science.
There’s no doubt that Python is a hot skill and a wise choice if you’re looking to move your career and your pay to higher levels.
So let’s get learning Python.
Python Books for beginners
Python Crash Course, 2nd Edition
Python Crash Course is the most popular Python book at O’Reilly Online Learning. The 2nd edition is new for 2019. The original edition of Python Crash Course has a 4.5 star rating on Amazon. It’s a fast-paced, thorough introduction to Python, covering basic concepts such as lists, dictionaries, classes, and loops, before showing how to put these concepts to use in real projects with 3 worked examples.
Where this book scores above others is that the author takes care not just to lay out the technical aspects of each concept, but also shows how to use best-practice style to write clean and readable code.
Importantly, it also covers how to test, which is so often sadly omitted from introductory language guides.
There are lots of practical examples and hands-on exercises, which are clear and focussed, and if you take the time to do them then you what you learn actually sticks with you.
It’s clear that a lot of time went into writing this book. The topics are presented in a carefully chosen order so that each builds on what has gone before and you don’t find yourself having to jump backwards or forwards to find an explanation.
This is a well thought out presentation of Python fundamentals.
Python Books for experienced Python coders
Effective Python: 90 Specific Ways to Write Better Python
Effective Python is brand new for November 2019. It’s the third most popular book Python book on O’Reilly and the first that isn’t aimed at beginners. Following the style of the essential Effective Java, the book that has been the bible for Java programmers for a decade, Effective Python presents 90 clearly explained and valuable rules for writing Python that will improve performance, security, maintainability, and readability.
Each of the 90 entries is a self-contained lesson with example code and clear reasoning backed by detailed understanding of how the Python language works.
There is a simple reason why Effective Python is the most essential read for any Python programmer moving beyond the basics, just as was the case for Effective Java. Languages like Java and Python are relatively easy to pick up, but it takes a lot of experience and a thorough knowledge of the language, the compiler, and a multitude of software development concepts to really know how to put it to use effectively.
Experienced developers get to know the quirks and the strengths and gradually for patterns and idioms for solving commonly occurring problems in ways that perform better and are lead to clearer and stronger program structure.
Effective Python distills that learning into clear lessons that are easy to understand, compelling, and easy to apply.
Effective Java has been a bestseller for a very long time. Effective Python follows the formula very closely and is destined to be just as successful and long-lived.
Be sure to pick up the second edition.
Python Books for machine learning
Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow
Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow is another of the most popular books on O’Reilly and at Amazon. For such a serious topic, the fact that this book is very near the top of Amazon’s bestseller list in the computer science category illustrates the massive growth of interest in machine learning.
Machine learning is no longer the preserve of PhD students. Building intelligent systems is increasingly part of modern commercial software development across all fields, and Python is at the heart of many of the popular tools used.
Creating systems that learn from data would be very difficult and time-consuming without using the Python based tools that provide ready-made solutions for the necessary mathematical techniques. From linear regression and training models through to deep neural networks, Hands-on Machine Learning is a guide to using Scikit-Learn and TensorFlow that is easy on the theory but full-on with the practical.
The early chapters cover the machine learning landscape from basic concepts through to the stat-of-the-art research. The book then moves on to more practical aspects of machine learning projects. Visualising data and preparing it for the learning algorithms. Training and fine-tuning models. Transformations and search techniques. Classification, linear regression, gradient descent, logistic regression, and polynomial regression. Decision trees. Unsupervised learning.
The second half is about neural networks. From the conceptual foundation through to practical examples of implementing and training neural nets with TensorFlow.
By the time you reach the chapters on Deep Computer Vision and Natural Language Processing with neural networks you’ll have a thorough grasp of the theory and be well-practiced with using the tools, and you’ll be gaining practical knowledge of subjects that previously seemed out-of-reach.
This book is comprehensive and clear. The mix of theory and practice is about right, and the hands-on parts are valuable activities that generate real understanding, not just mindless copy-paste.
Machine Learning moves fast, and this is the most up-to-date book of its kind. A masterwork.
Python Books for data science
Python for Data Analysis, 2nd edition
Python for Data Analysis, 2nd edition is a very practical book about manipulating, processing, cleaning, and crunching datasets in Python. Considered a classic, it’s required reading for machine learning projects using Python. Python for Data Analysis gives you a solid foundation of the principles involved, so that when you’re working with Matlab or Scikit you actually understand what you’re doing.
The author takes the time to demonstrate and explain each concept with realistic code and data. The concepts are presented in a well-thought out sequence so you arrive at the more complex topics already knowing the required basics.
It covers a lot of ground, and the field is so big these days, and so fast-moving, that you will eventually need to dig further with other sources, but as a foundation it still stands up.
It was written by Wes McKinney, who created the Python pandas project. It covers Pandas, but also NumPy, IPython, and Jupyter. It’s a very solid practical introduction to Python data science tools and techniques.
The best value way to get all these Python books
The best value way to get all of these Python books and pretty much every Python book currently in publication, along with a huge number of videos and live online training courses, is through O’Reilly Online Learning.
Take a look at our review of O’Reilly which shows you why it is the one resource every IT pro should have.