Python books for beginners

There is no doubt that the best way to learn to program is to practice. However, this is not enough. After all, if you practice typing for many years with just two fingers, you end up being very good at typing badly! So you need guidance and some level of structure to your learning.

Books offer a great way to attain this. On this page I list some books which I recommended for taking your Python programming skills to the next level.

It’s not just about learning new techniques and concepts. It’s also about feeding your mind. It is much easier to learn about something if you are inspired and motivated. That’s one reason reading books on programming is a great idea. It’s part of your ongoing education.

Reading books on programming is incredibly important. However, you need a balance of learning and doing, to consolidate your learning. A good rule of thumb is to spend at least 5 times as much time trying things out, building projects etc., as you do with your nose stuck in a book. Doing this means you will get the most from your reading. Of course many books offer plenty of practice exercises and projects, and this can be included in your reading-to-practice ratio.

A good rule of thumb is to spend at least 5 times as much time trying things out, building projects etc., as you do with your nose stuck in a book.

Books also offer a “temporary curriculum” which gives a structure to your learning. One very good reason to have a structure, is that although following your interests and natural preferences is very valuable, and great for motivation, it can also create a bias whereby thing you find more difficult or initially less interesting may not get covered, leading to a negative feedback loop. If you are following a text, you may well make so pleasant discoveries about topics which you previously had written off as “not your cup of tea, ” for example.


Python Books for Beginners

We all have to start somewhere. These books address the needs of complete beginners or relative newcomers needing to learn the basics of Python programming.

Please note, as an Amazon Associate I earn from qualifying purchases.

The Big Book of Small Python Projects: 81 Easy Practice Programs

Working on projects is a much better way to learn Python programming than just studying a load of syntax rules out of context. This book takes your through some simple Python projects to build your skill and confidence.

Automate the boring stuff with Python

This book has become a classic of Python programming, packed with ways to use python to make your life easier. A great way to improve your knowledge of Python while improving your life in the process.

Python Programming for Beginners

Takes you from the very basics of installing Python and editing and running Python programs, right up to object oriented programming with Python. Also explores some common Python packages with provide powerful extended functionality.

Learn Python 3 the Hard Way

Don’t be fooled by the tongue-in-cheek title. This book offers a great way for beginners to quickly become competent with the fundamentals of Python programming.

Python For Beginners: A Crash Course Guide To Learn Python in 1 Week

I’m always sceptical about titles like “learn X in one week”. I mean, it depends what else you are doing, right? that said, this book does a good job of explaining the basics of Python programming and has some useful mini-projects to help consolidate your learning.

Python Programming for the Absolute Beginner

Does what it says on the tin. Takes you from complete beginner to intermediate level Python programmer via some interesting and fun projects – mainly by building games of increasing complexity. From for loops to object-oriented programming and building graphical user interfaces (GUIs), this book has got you covered.

As an Amazon Associate I earn from qualifying purchases.


This post has described some books recommended by Compucademy for Python beginners and near-beginners. I hope you found it helpful.

Sharing is caring!

Leave a Reply

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