Everything you need to start Python: Favouragbejule
I put these skills into 4 major levels.
1. The basic level
2. The intermediate level
3. The advanced level
4. The expert/master level.
If you are a beginner programmer, you can take these readings as a curriculum or a guideline on the skills you should learn and what order you should learn them.
If you are someone who is more intermediate or advanced, maybe I will mention some skills and topics you haven't heard of before and maybe i can give some idea you might want to incorporate to improve your python skill set.
Before i begin, it is very important to note that you have to practice these skills you are actually learning to become good at it like knowing the syntax, solving problems with the language, building projects and so on.
So here is the list.
1. The Basics
So let's get started with the basics.
It is about the fundamentals programming concepts and deep understanding of the basic building blocks of programming. Like the way program reads, the core syntax, and so on.
Here we go!
1. Basic data types - what strings are, understanding booleans, etc.
2. Variables - you want to understand how these work, and why they are even used in programming
3. Conditions - involves the comparison of different variables and stuffs like that.
4. Chaining conditionals - understanding its evaluation and syntax.
5. Operators - how do we subtract or add 2 variables, what does the modulus operator do, and so on.
6. Control flow - Topics like if, else, elif statements.
7. Loops and iterables - Things like while loops, for loops, looping through dictionaries, lists, etc.
This however lead me smoothly to the next topic
8. Understanding lists, sets, dictionaries, float, etc.
After these you can move on to functions
9. Functions - They play a vital part in Python.
Deep understanding of functions will give you a great foundation for more topics to come.
10. Mutable and immutable data types
11. Common methods in Python - like how to change a string to lower case and so on.
10. File IO (input-output operations) - how CSV files works
Python Beginner crash course by Rafeh Qazi
Check out this video to learn the basics
2. Intermediate level
So we have:
1. Object oriented programming - understanding classes and understanding objects.
2. Data structures
3. Comprehensions - list comprehensions, dictionary comprehensions and so on
4. Lambda functions - These are anonymous functions.
5. Map, filter
6. Collection module
7. *args and ** kwargs
8. Inheritance- This kind of goes with object oriented programming.
9. Advanced class behaviour - like Dunder methods
10. PIP - installation of modules
11. Python environment - for instance, anaconda environments.
12. Module creation
13. Asynchronous programming (Async IO)
Learn these things Tech with Tim
These intermediate python tutorioals by tech with tim cover topics outside the fundementals and introduce you to more…
Next, we head into more tricky topics in the advanced and expert level.
Let me say now that you don't need to learn the topics in the advanced section to work as a Python developer or a software engineer. If you know the basics and intermediate topics, you can learn these ones whenever you want to.
3. The advanced level.
Let's get to it!
1. Decorators
2. Generators
3. Context managers
4. Metaclasses
5. Concurrency and Parallelism
6. Testing
7. Development and manipulation of packages
8. Cython - which is concerned with writing C code that can interact with Python.
Check this out to get started with the advanced section
The article is by
4. The Expert/master level.
I didn’t know what to put in here......first of all, because I am not an expert. Secondly, because I solely believe it depends on what you want to specialize in or want you want to use your skills for. Maybe in areas like web development, ethical hacking, and so on.
Or maybe you want to develop your own language, probably because you have deep understanding of how compilers and low level languages work.
As I said earlier, it all depends on your decision.
So complete these levels, and you will become a master at the Python programming language.
How does that sound?
Thanks for your time and good luck!
Read more post from this writer at Favouragbejule's Medium