This is a series of detailed Python 3 video tutorials. Currently there are 34 videos, and if you have questions about the videos or would like the source code, you can also visit their forum. If you prefer to learn Python 2.x for some reason, they also have 43 video tutorials on it.
Price
Free
Suitable for
Beginners without Programming Experience
Allen B. Downey's Think Python is a clearly written book, and wastes no space teaching you how to code with Python. What's better, throughout the book you'll find tips on Python best practices. Each chapter has several exercises at the end for you to practice with what you just learned, and the book also has a section dedicated to teaching you how to debug. Differences between Python 2.x and 3.x are pointed out in the footnotes, and if you want to focus on learning Python 3.x, Michael Kart adapted a version in PDF.
Price
Free
Suitable for
Beginners without Programming Experience
This interactive textbook will teach you how to think like a programmer, and each chapter comes with a video and several quizzes to help you solidify your understanding of the material. The guide uses Python 3.
Price
Free
Suitable for
Beginners without Programming Experience
This website has a built-in Python interpreter, which makes it really easy to see how your code will work without any hassle. Each chapter has sample code you can execute to see the results of your code. Every chapter also includes an exercise at the end for you to try things out yourself. Although the interactive tutorial uses Python 2, it specifies the differences between Python 2 and 3 so you'll keep them in mind if you're planning on working with a newer and more current version of Python.
Price
Free
Suitable for
Beginners without Programming Experience
This is a simple tutorial that will help you learn Python, with concise explanations and examples to let readers get an idea of how things work. People with programming experience may find it easier to follow than those who don't. The tutorial also has a version for Python 2, if that is what you prefer to learn.
Price
Free
Suitable for
Beginners with Programming Experience
This is the book that inspired a series of learn ___ the hard way, and for good reason, since it is really helpful for beginners. It claims to be hard only because it walks readers through exercises (which the readers follow and learn along the way), but it is actually quite a simple and easy-to-follow book. The book is written for Python 2.7, though it won't be too difficult to adjust from 2.7 to Python 3 if you would like to learn Python 3 instead.
Price
Free
Suitable for
Beginners without Programming Experience
A Byte of Python is a good book for coding beginners, since it is written without assuming readers know any programming language. The text is clear and easy to follow, and the tutorial is written for the more commonly used Python 2, though it does have several links to guides that will help users transition to Python 3.
Price
Free
Suitable for
Beginners without Programming Experience
For those completely new to programming, this book may be a bit intimidating, as it skips teaching you the fundamentals of Python programming and, as its title so aptly suggests, dives into Python. If you like learning things at a fast pace, this book may be just the thing you're looking for.
Price
Free
Suitable for
Beginners with some Programming Experience
Don't want to stick with just the basics and want to learn how to build a game instead? Invent with Python's tutorials will be a perfect fit for you, as it will teach you how to program with Python through concepts of code used in games. You'll be able to use Python to create your own simple game by the time you finish the tutorials.
Price
Free
Suitable for
Beginners without Programming Experience
This Python 3 tutorial will walk you through simple exercises Python works, so you'll be expected to have your Python interpreter ready as you work with the tutorial. It does not assume prior knowledge of programming, so it should be fairly easy to follow. There are also videos that go with the tutorial if you prefer, and there is also an older version of the tutorial for Python 2.
Price
Free
Suitable for
Beginners without Programming Experience
If you prefer to skip lengthy explanations and simply see how things work, you can give this Python 2 tutorial a try. However, those without programming experience may find it a little difficult to keep up with the tutorial's pace.
Price
Free
Suitable for
Beginners with Programming Experience
This interactive Python 3 tutorial was made by Waterloo University, and the built-in interpreter on the website makes following the exercises especially straightforward, since you can just run the code. The material is also clearly written, so those new to coding will find it easy to understand.
Price
Free
Suitable for
Beginners without Programming Experience
This succinct tutorial will give you a quick overview of Python 3 fundamentals, so it is a great way to supplement your Python learning if you decided to learn through a tutorial that is based on Python 2.
Price
Free
Suitable for
Beginners with Programming Experience
This opinionated site documents the best practices on how to best code your Python, and it gives you advice on how to use tools and modules based on scenarios.
Price
Free
Suitable for
Beginning Python Programmers
Another tutorial that will help you learn Python through coding games, this site will illustrate the materials through images, and there are also quizzes and worksheets at the end of each section to help you learn how to implement the Python code.
Price
Free
Suitable for
Beginners without Programming Experience
Naturally, Codecademy is also a great resource to get started on Python fundamentals, especially for those with no prior coding experience. It would be a good idea to familiarize yourself with Python through Codecademy's interactive tutorial, and then deepen your knowledge through more detailed tutorials/courses.
Price
Free
Suitable for
Beginners without Programming Experience
Python Challenge is not a tutorial per se, but nonetheless a fantastic way to better learn Python, as it challenges your knowledge of how well you know the language. Many have found the Python Challenge helpful in cementing the understanding of Python, so be sure to check the site out once you've gotten down the basics of Python.
Price
Free
Suitable for
Beginner/Intermediate Python Programmers
If you prefer to check how well you've learned Python through coding, this interactive site will help you get through the basics by giving you simple quizzes. You can see others people's progress as well, so the learning experience doesn't feel so lonely.
Price
Free
Suitable for
Beginners without Programming Experience
For those who are ready to learn more advanced parts of Python programming, be sure to take a look at this site, which provides a detailed guide to how to use 'magic methods'. These special methods are surrounded by double underscores (e.g. __init__ or __lt__), and will 'add magic' to your classes.
Price
Free
Suitable for
Intermediate Python Programmers
Tooting our horns here, but Codementor also has some great Python tutorials for beginners & intermediates alike. Articles range basic concepts to data science with Python to using Python with other tools such as Node.js. If you ever need 1:1 guidance with building your Python project and don't mind spending a bit of money, we have many Python mentors who can help you speed up your learning process as well.
Price
Free (Tutorials)
Suitable for
Beginner & Intermediate Python Programmers
Once you've become more comfortable with Python basics, you can take a look at the small programs on this site to better understand how Python is implemented for different scenarios.
Price
Free
Suitable for
Intermediate Python Programmers