When it comes to learning a new skill, a lot of questions come to mind.
How long will it take? Am I smart enough? Do I have the time?
This is all perfectly natural; it happens to everyone. It’s totally normal to want answers to these questions, and it’s very human to analyze whether we’d be able to chisel out time from our already busy schedules.
When it comes to learning Python, like all skills, it can be quite hard to determine how long it takes to learn it. Lots of factors come into play, such as how good you want to become, how much time you can commit, your previous experience with similar topics, and so on.
We can see quite a bit of variety in the timescales proposed by online experts as well. Here are some estimated timescales I’ve found proposed on the internet:
Author | Estimated Timescale | |
Data Quest | 5 hours per week for 1 month | |
Meenakshi Agarwal via Medium.com | 6-8 weeks | |
Jan Bask Training | 60 hours | |
Programming Hero | 2.5 months | |
Code Career Genius | 30 days | |
Tech Tricks World | 1 month; 3-5 hours per day |
Last Updated April 2021
Build 11 Projects and go from Beginner to Pro in Python with the World’s Most Fun Project-Based Python Course! | By Ziyad Yehia, Internet of Things Academy
Although there is quite a bit of variety, we can see that the estimates seem to hover around one to two months or four to eight weeks.
Based on this, I’d say a reasonable timescale probably lies somewhere in the middle (around six weeks). Six weeks is a good compromise between asking too much of your schedule and avoids overpromising rapid improvement.
So, instead of us trying to figure out exactly how long it takes to learn Python, let me share a plan that I have designed to help you learn Python in six weeks.
Let’s take a look.
How to learn Python in six weeks
Imagine learning to drive. Do you think you could learn to drive a car without knowing the difference between the accelerator and the brakes? How about knowing what red means at a traffic light, or which side of the road to drive on?
Similarly, mastering Python depends very heavily on you having a solid understanding of the basics. In fact, without them, you don’t have anything.
Here is a list of the fundamental building blocks of Python programming. If you know these topics, then you can say you know how to program in Python:
- Variables
- Numbers and arithmetic operations
- Strings and string manipulations
- Logic and Conditional Flow
- Data structures (lists, tuples, sets, and dictionaries)
- Loops (‘for’ loops, and ‘while’ loops)
- Functions
- Object-Oriented Programming (Classes and Objects)
If the above list looks a bit overwhelming, don’t worry. Allow me to illustrate a couple of these topics to show you just how simple learning Python really is.
Let me quickly demonstrate the first two topics: variables and arithmetic operations.
Suppose you wanted to add two numbers. Maybe you were coding a checkout software and needed to add together a price and 20% VAT to calculate the final cost of an item. Let’s see how we’d do it in Python:
price = 15
tax = 0.2 * price
total = price + tax
print(total)
Output:
18
First, we created a variable called “price” and used it to store the price of an item, which in this case was $15.
Then, we calculated the VAT due on the item by calculating 20% of the price.
Next, we added these two values together, just like we would on a calculator, and saved the answer in a variable called “total.”
Finally, we used Python’s print function to print the total cost to the screen, which was $18.
Just like that, we have written a Python script that can calculate prices for customers. Easy, right?