Python is definitely my favorite programming language. I talk about how much I love Python all the time on Twitter. Naturally, people always ask me, "What are you using to learn Python?" So I'm finally putting this article together featuring 8 resources you can use to learn Python.
Usually, I'm a little wary of posts like this because I don't want to overwhelm anyone with a long list of courses and books. So before you start reading, here's my number one rule.
Work on just a few resources at a time
Also keep in mind, I don't use all of these resources. Even if I haven't personally used a certain course or read a certain book, I've made sure to only include things that I've heard good things about. So rest assured that I'm not randomly recommended resources just because they look cool.
Here's an emoji key to help you navigate the list more easily.
- 👩🏾💻 = I use/have used this resource
- 🤑 = Paid resource
- 0️⃣ = Free resource
- 0️⃣🤑 = Freemium resource
1. Automate the Boring Stuff With Python 👩🏾💻0️⃣🤑
This is probably the first thing someone recommended to me when I first started learning Python. It's an oldie but goodie and I highly recommend it.
Navigating the free version of this book is a little tedious but that's what I used. You can also purchase a hard copy or an ebook version of Automate the Boring Stuff With Python.
I love the exercises that are sparsed throughout the book. It gives you an opportunity to immediately apply what you learned. So I highly recommend this book as a starting point for anyone interested in Python.
2. Learn Python the Hard Way 0️⃣🤑
This is another book that is widely known in the Python community. I haven't read it yet. But I've only heard it's awesome. It's available for free but you can also purchase the hard copy or ebook version of Learn Python the Hard Way here.
I have yet to watch this video since it's more than 6 hours long which doesn't go over well in my brain. But the reason why I'm listing it here is because it's project-based.
If you've read some of my other articles, you'll know that I am a HUGE proponent of project-based learning. With this video, you can learn Python by building 5 Games. This allows you to make direct application of what you're learning.
4. The Come Up YouTube Channel👩🏾💻0️⃣
This is an awesome YouTube channel to know whether or not you're learning Python. Bukola Ayodele is a software engineer without a Computer Science degree and she makes videos with tips for people interested in getting into tech.
I love her channel because she also makes videos about beginner-friendly Python projects. She has a few videos where she lists out the resources she used to become a Python developer. Her videos have helped me get a better idea of all the things I can build with Python. She paints a clear picture of how useful Python is.
5. Codecademy Python Chatbot Course👩🏾💻0️⃣🤑
This is one of my favorite resources! Codecademy has tons of Python courses available. I like the chatbot course because it's project-based. I still haven't completed it yet. But I really like it so far.
Codecademy is a freemium resource. So you can get a lot of good material from the free tier. But a lot of projects are reserved for those with a premium subscription. If you're not able to subscribe right now, I still suggest trying one of their Python courses and building a project using the freeCodeCamp video I mentioned earlier.
This course is great for people that may have used Python in the past but need a refresher. It gives an overview of many of the things you can do with Python without spending too much time on the fundamentals. If you're a complete beginner, I suggest starting with Codecademy first and returning to this course if/when you need a refresher.
Although egghead.io has tons of free front-end courses, this is not a free resource.
Here are two websites that I regularly reference when I want to check my understanding of certain Python concepts. They're handy to have bookmarked just in case you need a quick solution or you have a question you need cleared up. I find it's easier to parse through these references first. Then I'll search Google if I can't find what I'm looking for.
8. Intro to Programming with Python👩🏾💻0️⃣
I hope you found this helpful! Remember, try to choose two or three things to stick to and complete. You'll end up with a solid foundation in Python.
Please feel free to add some of your own suggestions in the comments! And stay tuned for more Python and Cloud related content. Thank you for reading!!