Python for Everyone: Mastering Python the right way
Tags: python, programming, tutorial, django
Published: 2022-02-28 05:52:05

what is the best way to learn python? There are various learning and teaching techniques used.Some of the techniques might include reading documentations and books related to the subject of study, watching tutorials, physical teaching by a teacher and by putting into practice all that you learn.
A given technique might work well for person A as opposed to person B, therefore I would prefer usage of a technique that best suits you.
In this article, I'll be discussing "Mastering python the best way" where ill highlight also methods/techniques that worked for most developers.

##What should you learn?
When getting started with python, one should;
- Have an overview of python or a little history of python.
- Learn on how to set up python environment.
- Learn basics of Python .i.e, Python fundamentals.

These are captured in previous article [Python 101: Introduction to Modern Python ](https://dev.to/killallnano/python-101-introduction-to-modern-python-196j) where you'll learn how to install and set up your python as well as the fundamentals of python i.e you'll learn how to print to console,take input from the user, perform arithmetic operations among others. Find time to visit [Python 101: Introduction to Modern Python ](https://dev.to/killallnano/python-101-introduction-to-modern-python-196j) if you missed it.
- Data structures and algorithm in Python
- Control flow and decision making in python(use of `if` and `elif`)
- Functions in python
- Classes in python

Again in the previous article [Introduction to Data Structures and Algorithms With Python ](https://dev.to/killallnano/introduction-to-data-structures-and-algorithms-with-python-33c9),I discussed the various data structures and algorithm in Python, where we checked on some of the inbuilt data structures such as `list`, `tuple`, `dictionary`, etc and some derived or user created data structure such as `trees` etc and how they are implemented.
We used various functions and illustrated how they are used as well as classes in python. If you haven't checked on them, you might consider visiting [Introduction to Data Structures and Algorithms With Python ](https://dev.to/killallnano/introduction-to-data-structures-and-algorithms-with-python-33c9).

These are the basics that almost all the python developers should know and understand irrespective of your field.
We also discussed on our [first article](https://dev.to/killallnano/python-101-introduction-to-modern-python-196j) that python has various applications. Some of them being
- Artificial Intelligence(AI) & Machine Learning
- Data Science
- Web Development
- Game development
- Desktop GUI Development
- Automation
- Audio and Visual Applications

These applications might be considered as a "course to learn" and each might have different learning paths, documents and sites that offers the courses. If you use [linked](https://www.linkedin.com/learning/) in for learning you might consider the courses below and paths below. But you can also use various platform of your choice such as [Udemy](https://www.udemy.com), [Cousera](https://www.coursera.org), [IBM](https://www.ibm.com), [W3Schools](https://www.w3schools.com), [Javatpoint](https://www.javatpoint.com) among others
##AI and Machine Learning
Artificial intelligence and machine learning are the part of computer science that are correlated with each other. These two technologies are the most trending technologies which are used for creating intelligent systems.
Artificial intelligence is a field of computer science which makes a computer system that can mimic human intelligence. It is comprised of two words "Artificial" and "intelligence", which means "a human-made thinking power."
Machine learning is about extracting knowledge from the data. It can be defined as,
Machine learning is a subfield of artificial intelligence, which enables machines to learn from past data or experiences without being explicitly programmed.
### Courses for AI and Machine learning
- [Machine Learning](https://www.linkedin.com/learning/machine-learning-with-python-foundations) By [Frederick Nwanganga](https://www.linkedin.com/learning/instructors/frederick-nwanganga)
- [Artificial Intelligence Foundations: Machine Learning](https://www.linkedin.com/learning/artificial-intelligence-foundations-machine-learning) By [Doug Rose](https://www.linkedin.com/learning/instructors/doug-rose)

###Learning Paths for AI and Machine learning
- [Master the Fundamentals of AI and Machine Learning](https://www.linkedin.com/learning/paths/master-the-fundamentals-of-ai-and-machine-learning)
- [Become a Machine Learning Specialist](https://www.linkedin.com/learning/paths/become-a-machine-learning-specialist)

You can also search for the books below and feel free to also learn through the [YouTube tutorials](https://www.youtube.com/results?search_query=AI+and+Machine+learning+in+python) 

![AI in python](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/twsg2g7vi4bqre6wjz31.jpg)
![Advanced guide for artificial intelligence](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fkb60kgwziarm2qygae9.jpg)
![Machine learning using python](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a3n4j3crlal9w8d3z03b.png)
![introduction to machine learning in python](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/41qdhoxihjrs9ys68gcs.jpg)

##Data Science
Data science is a deep study of the massive amount of data, which involves extracting meaningful insights from raw, structured, and unstructured data that is processed using the scientific method, different technologies, and algorithms
It is a multidisciplinary field that uses tools and techniques to manipulate the data so that you can find something new and meaningful.
###Whats the difference between Data Science and Machine Learning
Data Science is the study of data cleansing, preparation, and analysis, while machine learning is a branch of AI and subfield of data science.
### Courses for Data Science
- [Python for Data Science Essential Training Part 1](https://www.linkedin.com/learning/python-for-data-science-essential-training-part-1) By [Lillian Pierson,P.E.](https://www.linkedin.com/learning/instructors/lillian-pierson-p-e)
- [Python for Data Science Essential Training Part 2](https://www.linkedin.com/learning/python-for-data-science-essential-training-part-2) By [Lillian Pierson,P.E.](https://www.linkedin.com/learning/instructors/lillian-pierson-p-e)

###Learning Paths for Data Science
- [Advance Your Python Skills for Data Science](https://www.linkedin.com/learning/paths/advance-your-python-skills-for-data-science)
- [Master Python for Data Science](https://www.linkedin.com/learning/paths/master-python-for-data-science-16361344)

You can also search for the books below and feel free to also learn through the [YouTube tutorials](https://www.youtube.com/results?search_query=python+for+data+science)
![Python for data science](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ghjkuhfjo7bl343v8bap.png)
![Python for data science](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dfi7hum2u3f1a2treq5l.jpg)

##Web Development
Python offers many frameworks from which to choose from including `Flask`, `CherryPy`, `Pyramid`, `Django` and `web2py`. These frameworks have been used to power some of the world’s most popular sites such as Spotify, Mozilla, Reddit,etc. I had discussed **django** in my previous article [Getting Started with Django](https://dev.to/killallnano/getting-started-with-django-13ep) where I showed how to download, set up virtual environment, create a project, app among many more. You might consider checking on it to learn more.
Web development can be learnt in many platform such as the ones listed at the beginning of the articles such as LinkedIn Learning, Udemy, Cousera etc.
Learning through the documentation of the various frameworks is also a great one, in addition to that there are free tutorials on [YouTube](https://www.youtube.com/results?search_query=Python+for+web), and documents that can help a lot.
Some of the books that I would recommend are:
**Django 3 by example** where you'll learn and build operational sites
**Django for beginners**
**Django for Professionals**
**Flask Framework**
![Flask](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8qzw79szbrupt5bkdu7w.jpg)
**Building web applications with flask**
![Build in Flask](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uk3t40gsamhh7adkw34r.jpg)
**Flask by example**
![Flask by examples](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s2zuyfkdlsge445ravqy.jpg)

Python is also used for Desktop GUI and Game development and more that will be discussed in the next article.