DEV Community

Cover image for Top 8 Free Resources to Learn Python

Posted on

Top 8 Free Resources to Learn Python

It’s an exciting time to learn anything, especially Python. There are several Python resources available online including books, video tutorials and courses. If one wants to learn Python the traditional way using a book, there are great free books available online as well. This article lists some of those resources along with the intended audience.

Why Python?

Here are some of the compelling reasons to learn Python:

  • Python is one of the best languages to get started programming with. It does not have a steep learning curve. When compared to other programming languages, it is easier to learn the basics and be productive relatively quickly.
  • Python is highly versatile. It has lots of use cases like scripting, data analysis, web development, data science, machine learning, artificial intelligence and much more.
  • Developers with Python skills are in high demand.
  • There are several resources available that teach Python for absolute beginners which is harder to find if one wants to learn any other programming language with no prior experience.

1. Automate the Boring Stuff with Python

This book explains the fundamental concepts and assumes no other programming language experience. What I like most about this book is once fundamental concepts are covered, readers are introduced with practical use case concepts such as web scraping, working with PDF files etc. Also, the author has several game programming related books that are open-source.

2. Python for Everybody

This is another great book written by a university professor. This book again assumes no prior programming experience and also covers Object Oriented Programming (OOP) concepts in Python. Same author has an Edx course which can be taken for free but requires a fee for a verified certificate.

3. Think like a computer scientist - Learn with Python

Another great book that assumes no prior programming experience. This book not only covers fundamental concepts but also covers some of the OOP concepts using Python, advanced data structures such as Queues, Linked Lists and Trees.

4. Learn Python the hard way

This book’s chapters are written as a series of programming exercises stressing the point that writing actual programs is the best way to learn a new programming language.

5. A Byte of Python

This is another great open source book that assumes no other programming language experience. All of the Python’s core features are explained including mention and usage of some of the standard libraries.

6. Dive Into Python 3

This book covers several advanced concepts such as comprehensions, closures, generators, iterators. Definitely worth a read to get a grasp of several advanced Python concepts.

7. The Hitchhiker’s Guide to Python!

This book starts with Python installation instructions but covers a range of topics such as setting up Python Virtual Environment, Coding Style, Best Practices, Documentation. Definitely worth taking a look.

8. Google’s Python Class

Last but not least, Google’s python class is worth a mention. This class covers Python 2. But many concepts are still relevant to Python 3. This course also has a set of accompanying lectures taught by a Google employee which are highly engaging.

Hope you found these resources helpful!

Top comments (6)

kenhudak519 profile image
Ken Hudak

Thanks! Going to get started on Automating some small stuff. Nice PY Collection.

pauld profile image

Thanks for the resources. I've struggled with python during this course
And now having more this list of resources will help.

brendagarrett profile image

Yes, this is a really good one to learn python this way. It is a great for many students who want to learn. I am really happy to see this post.

mcnchem profile image

Thank you for this Python list!! I do enjoy learning JS and Python.

Free code camp just released some of its python certifications. Any opinions?

dev0928 profile image

Thanks Chem! I think free code camp's Scientific Computing with Python seems to be the best option to start with. Other certifications seem to build on top of this one. Good Luck!

warlinux2 profile image