Free Python Tutorials
Tags: python, programming
Published: 2020-11-12 17:18:04

[Books] are great. Sometimes, though, I want something less heavy and more casual. Such as a tutorial.

How do I define "tutorial" as opposed to a "book"? A tutorial is a non-intimidating, highly practical introduction that is not necessarily book-length. It is typically designed for the web, and may feel more interactive than a book.

The following tutorials are well-written and available for free online.

> How to use this article: given the nature of tutorials, these are introductory in nature. So it probably wouldn't make sense to read all of them thoroughly, unless that is your joy. Instead, you might read my brief synopses, pick a few to go look at yourself, and then settle down with one or two.

## [Django Girls Tutorial][djangogirls]

[![Django Girls](https://dev-to-uploads.s3.amazonaws.com/i/nuxz4kuhc35jyidmolxa.png)][djangogirls]

[Django Girls](https://djangogirls.org/) "inspire women to fall in love with programming" and also "organize free Python and Django workshops, create open sourced online tutorials and curate amazing first experiences with technology." Their online tutorials are indeed amazingly thorough, hospitable, and helpful. I want to emphasize that the tutorial is not just for those interested in Django or web development. It includes an excellent [introduction to Python](https://tutorial.djangogirls.org/en/python_introduction/) that is simply one of the best out there. You can investigate [the other Django Girls resources as well](https://djangogirls.org/resources/).

**Audience**: Anyone, including those new to Python or programming.

**Strengths**: Comprehensive, kind, hospitable.

**Topics**: Python fundamentals, Python installation, Django, web development.

## [Official Python Tutorial][official]

[![Python logo](https://www.python.org/static/community_logos/python-logo-master-v3-TM-flattened.png)][official]

The official Python documentation [includes a rather comprehensive tutorial](https://docs.python.org/3/tutorial/) and you can wade into it as far as you like. Then, if and when you want to dig deeper into more advanced concepts, the rest of the documentation is right there. In fact, the tutorial conveniently includes links to other part of the docs. While an introductory tutorial, I have often treated it as a reference as well, seeking it out over the years.

**Audience**: Those new to Python, as well as intermediate developers

**Strengths**: Comprehensive, part of the official docs, always up to date.

**Topics**: Python fundamentals, Python installation, Django, web development.

## [Real Python's Introduction to Python 3][realpython]

[![Real Python](https://dev-to-uploads.s3.amazonaws.com/i/a2zlq7df59ibjcnytacz.png)][realpython]

For anyone at any level of learning Python, a few bookmarks pointing to Real Python's many resources will be essential. While some resources require a paid membership, there is also a lot of free content, including introductory tutorials like [Real Python's Introduction to Python 3][realpython]. This tutorial series might not be one you down in one sitting, but you don't have to. Wade in, then pick up later where you left off.

**Audience**: Real Python has resources for nearly every audience. This tutorial is great for those new and familiar.

**Strengths**: Up to date, thorough, and exceedingly well written.

**Topics**: Python basics, Python installation, data types

## [Non-Programmer's Tutorial for Python 3][nonprogrammers]

[![Python Wikibook](https://dev-to-uploads.s3.amazonaws.com/i/1lwjm940kwt6pjlt477e.png)][nonprogrammers]

This is one of the most well-written and complete Wikibooks I have seen, and it happens to be an introductory Python tutorial. A close reading will give you a good start with the tools and concepts you need to program in Python.

**Audience**: Those new to Python, and those brushing up.

**Strengths**: Comprehensive, easy to read, plenty of examples

**Topics**: Python fundamentals

## [AskPython's "Start Here"][askpython]

[![AskPython](https://dev-to-uploads.s3.amazonaws.com/i/ldhwe5rr73h7qoleudq5.png)][askpython]

AskPython is one author's well-written blog. The [Start Here][askpython] link at the top of every page takes you to a two-post introduction to Python programming that is ample without being overwhelming.

**Audience**: Those new to Python

**Strengths**: Screenshots!

**Topics**: Python installation, PyCharm IDE, "Hello, World" and analysis.

## [After Hours Programming: Python][afterhours]

[![Afterhours Owl](https://dev-to-uploads.s3.amazonaws.com/i/6shnz8pxu7rr9t91ajiz.png)][afterhours]

The After Hours Programming blog features quality articles on topics related to web development. The [Python tutorial there][afterhours] provides a gentle and practical introduction to Python, whether or not you are a web developer.

**Audience**: Those new to Python

**Strengths**: Elegance and succinctness

**Topics**: IDE choice, web development, Python fundamentals

## [Introduction to Python 3 (basics)](https://pythonprogramming.net/introduction-learn-python-3-tutorials/)

[![pythonprogramming.net](https://dev-to-uploads.s3.amazonaws.com/i/1c5audtpnwwdnqudf6zk.png)][pythonprogramming]

There are a variety of tutorials on [pythonprogramming.net][pythonprogramming], including [Introduction to Python 3 (basics)](https://pythonprogramming.net/introduction-learn-python-3-tutorials/) as well as [an intermediate option](https://pythonprogramming.net/introduction-intermediate-python-tutorial/). I am impressed with the hands-on nature of the introductory tutorial, and the breadth. This is one that could be classified as a video series, a course, or a tutorial. Phooey on my taxonomy; I am including it here.

**Audience**: Those new to Python, or those wanting to "fill in the gaps."

**Strengths**: Breadth, visual examples, very practical

**Topics**: Python fundamentals, mutability, tic tac toe (you can follow along and create the game)

## [Ultimate Python study guide][ultimate]

[![Ultimate Python study guide](https://dev-to-uploads.s3.amazonaws.com/i/e3mxo0oqrfvr46y5r3kh.png)][ultimate]

This tutorial is unusual in its structure and breadth. The [Ultimate Python study guide][ultimate] is very modern, and rather than re-invent the wheel, will sometimes link to external resources. Most of the content, though, is original. While this may not be everyone's cup of tea, much of the tutorial is written in Python itself. Given that, this may be a good option as a 2nd tutorial.

**Audience**: Those who are starting out in Python, and desire a creative approach with many real examples.

**Strengths**: Current and creative

**Topics**: Python fundamentals, data structures, advanced concepts such as asyncio, threads, decorators, etc.

## [How To Code in Python][dotutorial]

[![How To Code in Python](https://dev-to-uploads.s3.amazonaws.com/i/sm2j1cinp8ys9ykv7o90.png)][dotutorial]

Digital Ocean provides this series of introductory articles to help new Python developers get started. As mentioned in my [books] review, it is also downloadable as a PDF or ePUB for reading offline.

**Audience**: Those new to Python, as well as those brushing up.

**Strengths**: Practical, digestable, pleasant

**Topics**: Python basics, installation, debugging logging, data types, hints and tips.

## Other tutorials?

There are many Python tutorials freely available online, and this is just a selection. Are there current, high quality tutorials I should include in this list? Feel free to post a comment!

[afterhours]: https://www.afterhoursprogramming.com/tutorial/python/
[askpython]: https://www.askpython.com/python-programming
[books]: https://dev.to/bowmanjd/free-books-for-learning-python-1dhd
[djangogirls]: https://tutorial.djangogirls.org/en/
[dotutorial]: https://www.digitalocean.com/community/tutorial_series/how-to-code-in-python-3
[google]: https://developers.google.com/edu/python
[official]: https://docs.python.org/3/tutorial/
[pythonprogramming]: https://pythonprogramming.net/
[realpython]: https://realpython.com/python-introduction/
[ultimate]: https://github.com/huangsam/ultimate-python
[nonprogrammers]: https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_3