Practice Python

Beginner Python exercises

15 January 2017

Resources for Learning Python and Programming

Practice Python aims to provide basic exercises for Python learners to discover Python, but it is certainly not a full and comprehensive resource. There are plenty of other resources out there online (both free and not free) that Practice Python recommends.

This page contains a collection of resources for learners of Python - some are courses, some are books, some are other Python resources. If you have suggestions for what to put on this page, please contact me.

Online courses (for free)

There are many free resources out there to help you learn Python. Often the downside of free resources is that the usability is not great, or it requires some digging to find some useful content. If you are patient, it can pay off nicely. Some of my favorites:

Online courses (for a fee)

Another way to learn Python and programming is to pay for guided courses. Disclaimer: If you use the links from this page to sign up, this blog will receive a small kickback at no cost to you. Read our full advertising disclosure here.

Online resources


Learning Python

The books here are rated from more beginner-skewed to more advanced as the list goes on. I’ve even added my own chili rating to each book!

    Automate the Boring Stuff with Python by Al Sweigart definitely has the best title in the business. The style of the book is about what Python can do for you - emphasis on Python tools that can analyze websites, make API calls, and generally automate boring stuff. The emphasis is on Python 3 and on tools like regular expressions and web requests. The explanations are thorough and step-by-step, getting harder through the book. For those looking to get motivated by the ways Python can help you on a daily basis without investing years of study, this is a book to take a look at. I also recommend the Automate the Boring Stuff Udemy course if you are more of a visual and auditory learner - it contains the same content in a video course format.
    Learn Python The Hard Way by Zed Shaw is one of the most popular books about learning Python out there. The book goes through concepts important to Python one by one and in great detail. The book covers syntax from Python 2.7, but the concepts are not specific to just Python. Yes, it is called Learn Python the Hard Way, so the exercises and concepts are grouped together in an unconventional order. The emphasis is on diving in and exploring Python with some basic guidance. There is even a free version of the book online, if that suits you better!
    Effective Python by Brett Slatkin is a more advanced book framed in the style of best practices. When you learn to code, you should learn the right way through a series of best practices that are widely used and generally applicable. The style is easy to read, and covers all the major areas of Python development and programming lifecycles. The code examples are helpful and informative as well.
    Python Crash Course by Eric Matthes approaches learning and teaching Python with the same philosophy as I do - that learning by doing is strictly better than reading. He goes from basics to larger-scale projects like webapps with Python and Python frameworks. The material is well-explained, and gets harder as you get farther along in the book. But all the while, everything is explained in a way that is easy to digest.

Another way to read books is by Downloading the free Kindle App to sync your progress from the computer to your phone.

Read our full advertising disclosure.

If you have any course or book recommendations, let me know in the comments!

Share the fun!

comments powered by Disqus