Learn Python — Take This 10 Week Transformation Challenge
Join the DZone community and get the full member experience.
Join For FreeI know you have been reading amazing things about Python every day — about how versatile it is and its applications in web development and data sciences. You want to learn Python but maybe, like me, you're procrastinating because you're not sure how to start.
That’s fine because in this article, I've made a 10 week Python program for you. Learning is a continuous process, and this 10-week program is designed to be extensive to master Python at a moderate pace.
To make this article more interesting, I'm going to use Dragon Ball Z's "Goku" to show you the transformation that you're going to take in these next 10 weeks!
So, let's start the journey...
Week 1: Basics
In the first week, it's important to get comfortable with your Python environment by installing Python on your machine. Understand what programming is and how programming languages work. Then, start with some basics by focusing on syntax and various data types.
- Installation.
- Learn about syntax.
- Variables and scope.
- Data types (number, string, list, tuple, dictionary, set).
- Be Curious and Explore Python.
If you are wondering from where to learn these topics, don't worry you can learn Python for free from this Python Master Sheet.
Week 2: Control flow
This week, let's study control statements that are used to make decisions according to some specific conditions. Moreover, you’ll learn to execute repetitive tasks with loops. Then, you can move on to encapsulating functionality within blocks code with functions. By the end of this week, you'll be able to start practicing with some basic interview questions. (Some good sites that I use include: hackerrank, leetcode, topcoder.
- Control statements.
- Loops.
- Functions.
- Practice 20+ coding problems.
Week 3: OOPs
This week, we will study Object-Oriented Programming, which every programmer should know. OOPs concept is based on the DRY principle (Don’t repeat yourself), and it helps in writing cleaner and more manageable code. After learning the concepts you have to practice some more programming questions.
- Object-oriented programming.
- Classes and objects.
- Inheritance.
- Practice 30+ coding problems.
Congratulations! You have leveled up
Week 4: Intermediate
At this point, you have covered most of the basics. Now, we will study some more topics that will help you to write more optimized code.
Week 5: Introduction to Web Development
For web development, the most popular Python frameworks are Django and Flask. You can choose either, but I recommend Django. Now's your chance to start some frontend basics (HTML, CSS, JavaScript) along with some Django.
- Frontend: Html, CSS, Javascript
- Django basics.
- Django model, view, and templates.
- Working with databases.
- Django sessions and cookies.
Week 6: More Web Development
This week, we dive deeper into Django concepts, and in the end, we develop a simple web app capable of handling CRUD operations. You can choose a project of your choice, for example, the project can be adding book details to a database and giving users the options to edit, remove, or add new details to a book.
- Django admin customization.
- Django form handling.
- Django Ajax.
- Django ORM.
- Django Bootstrap.
- Django web hosting.
- Project: CRUD web app.
Week 7: Special topic: Introduction to Data science
Python is often used in data science, and you can really boost your profile by learning this field. So, this week we are going to begin to work with some preliminary data science concepts and work with some popular libraries (Pandas, Numpy, and matplotlib).
Week 8: Machine Learning With scikit-learn
This week, we dive into machine learning, which is a subset of data science. First, work to understand some basics behind machine learning, inlcuding its various subsets and commonly used algorithms. Then, jump into working with scikit-learn to train and test some of your first classifiers!
- Machine learning types.
- Machine learning algorithms.
- scikit-learn (loading a dataset, training and testing data set, fitting the model).
Week 9: Practical Machine Learning
This week, do a lot of practical machine learning and implement various machine learning algorithms. Kaggle is a great website to find datasets and even example implementations of algorithms with code, including:
- Linear regression.
- Logistic regression.
- K-nearest neighbors.
- SVM (support vector machines).
- Decision Trees.
- Random Forest.
Congratulations! You have leveled up
Week 10: Integrating Everything: Build Project
This week, you can think about a project that will give you the opportunity to build and apply all the things you have learned. This could be something that you really want to add to a resume or just an idea that you're particularly passionate about! You don't have to go anywhere I have found this blog with 14 amazing Python projects for beginners to experts.
EndNote
"You don't have to be great to start, but you have to start to be great"
So, now, what are you waiting for? Start from this day onwards and commit to learning new things every day. Within 10-weeks, you will see great improvements in yourself.
Opinions expressed by DZone contributors are their own.
Comments