Earlier this week, I learned that I'll be working less on unmock-js and more our latest open-source namesake, Meeshkan. The main difference? Meeshkan is written in Python... which I've never used before π
So I asked folks on Twitter for their favorite Python resources and gathered them into a little list (in no particular order). Enjoy!
Table of Contents
Books π
- Fluent Python by Luciano Ramalho
- Learn Python the Hard Way by Zed A. Shaw
- Programming in Python 3: A Complete Introduction to the Python Language by Mark Summerfield
- Coding the Matrix by Philip N. Klein
- The Python Apprentice by Robert Smallshire and Austin Bingham
- Automate the Boring Stuff with Python Programming by Al Sweigart
- Head First Python, 2nd Edition by Paul Barry
- Other Python books by No Starch Press
Courses βοΈ
- π Programming for Everybody (Getting Started with Python) by University of Michigan on Coursera
- π Introduction to Python by Microsoft
- Learn Python 3 by Codecademy
- AI Programming with Python Nanodegree by Udacity
- Automate the Boring Stuff with Python Programming by Al Sweigart on Udemy
- Complete Python Bootcamp: Go from zero to hero in Python 3 by Jose Portilla on Udemy
- Various courses by Rice University on Coursera
Tutorials π
- π 11 Beginner Tips for Learning Python Programming by Krishelle Hardson-Hurley on Real Python
- π Learn Python in 10 minutes by Stavros Korokithakis
- π Python Programming Tutorials by Geeks for Geeks
- π Various entry-level Python tutorials by @codespent
- π More recommended tutorials by the Python community on Stack Overflow
Videos πΉ
- π Python Tutorial for Beginners by Programming with Mosh
- π Python - Intro to Computer Science - Harvard's CS50 (2018) by freeCodeCamp
- π Python Tutorials by Corey Schafer
Your Recommendations π¬
Have any resources you think should be on this list? Comment below!
Top comments (6)
Very helpfull thanks ππ I just want to know if it's efficient to balance between these resources or just take one and focus on it ? Cs I tried the first one and I got completely lost and I don't want to be like a butterfly flying from course to another,, any advices it's will be extremely helpfull!
Thanks for commenting βΊοΈ I would guess that it depends on your learning style and what exactly youβre trying to learn.
I personally tend to stick with one resources when Iβm doing more general language learning (like now Iβm doing Codecademy for Python) then move on if it either isnβt working for me or Iβve gotten what I need out of it.
Thanks again and thanks for ur time wish u a good luck ! π
Hello Carolyn. Actually, the Python 3 course in Codecademy is pretty good. I finished the Computer Science path there, which is 100% python. Depending on what you will be doing, you can take that route, or the Data Science Path, which is also in Python.
About the books, everybody talks about Automate the boring Stuff, i have it but it's still in my TODO list. Personally, i don't like long lists, it leads to procrastination π€£ just pick one and go, you won't be wrong.
Yeah Iβm working through the Learn Python 3 course on Codecademy now and enjoying it! I didnβt know the CS route was all Python, Iβll have to look into that as well. Thanks for the tip π
I would also recommend to use a good linter to make sure that you learn ideomatic python from the very start.
My tool of choice is
wemake-python-styleguide
. Check it out:wemake-services / wemake-python-styleguide
The strictest and most opinionated python linter ever!
wemake-python-styleguide
Welcome to the strictest and most opinionated python linter ever.
wemake-python-styleguide
is actually a flake8 plugin with some other plugins as dependencies.Quickstart
You will also need to create a
setup.cfg
file with the configuration.We highly recommend to also use:
Running
This app is still just good old
flake8
And it won't change your existing workflow.See "Usage" section in the docs for examples and integrations.
We also support Github Actions as first class-citizens Try it out!
What we are about
The ultimate goal of this project is to make all people write exactly the same
python
code.