InterviewNoodle
Published in

InterviewNoodle

Walk like a Snake: A Python Beginners Roadmap

Hey Coders, Domino this side. You may be curious from Rubics’s last post and thinking “Why does Domino want to learn Competitive Coding?”.
So, here I am with a story that motivates me to learn this skill but you have to promise me, Don’t tell Rubics because I am going to do something evil.

I find out Rubics hides his food inside a wooden brain-teaser box and it can be opened by solving some Mombo-jumbo algorithms. He changes his password frequently so no one can steal but I am going to do this, I am gonna steal all his food(HEHE).

That is the only reason why I want to learn Competitive Coding. And with the help of all of you, I have a complete roadmap of How to learn Competitive Coding.

So, Now I started learning my first language which is PYTHON.

Python RoadMap: TheCodePanda

I have done one more evil thing, I secretly grabbed a complete topic-wise roadmap and all tricks to learn Python from Rubics’s computer.

I am going to share that with you, after all, you help me to get a roadmap of Competitive Coding on the first stage.

Let’s have a Python Topic-wise modules list first then I will explain each and every trick about Python.

Are you ready? Meme

Module 1: Fundamentals of Python

Let’s start with some core topics first:

  1. What is Python and why did we choose it
  2. Python Installation and Hello world program
  3. Start With Python’s Variables
  4. Python Basic Data Types: Int, Float, String, Bool, Complex
  5. Print statement in Python
  6. Taking Input from user
  7. Python Operators: Arithmetic, Conditional, Relational & Logical, Bitwise operator

Bonus Topics (Not For Beginners):

  • Python Memory Management
  • Size of basic Datatypes (Value + functions)
  • Hold vs refer in Python Memory Management

Module 2: Condition & Loops

LEVEL 2 MEME

Condition:

Good Condition Meme
  • Learn Why we need conditions
  • If & If-else statements
  • Single Line If-else statements
  • If-Elif-Else statement
  • Nested If-else tree.
  • No need to learn while because while is not there

Loops:

This is Loop Meme
  • Learn What is Loops?
  • Types of Loops
  • For Loop
  • Range Function
  • Single line For loop
  • While Loop
  • Infinite Loop
  • Solve Pattern problems
  • Loop related problems

Module 3: Learn Advance Data type

  1. List
    i. List init, adding list, retrieving an item
    ii. Indexing and slicing in list
    iii. List’s functions
    iv. looping on list
    v. Operations on list
  2. Tuple
    i. Tuple init, retrieving an item
    ii. Indexing and slicing in tuple
    iii. tuple’s functions
    iv. looping on tuple
    v. Operations on tuple
  3. Dictionary
    i. What is key-value in the dictionary
    ii. Adding and retrieving an item from the dictionary
    iii. Indexing in the dictionary
    iv. Functions of dictionary
    v. Iterating on dictionary
    vi. operators of dictionary
  4. String:
    i. String init, retrieving character
    ii. Indexing and slicing
    iii. string manipulation functions
    iv. looping on string
    v. operators on string
  5. Set:
    i. Set init, adding item to sets.
    ii. No need to learn to index and slice (Not a part)
    iii. Set functions
    iv. the operator on sets
    v. enumerates on sets
    vi. looping on sets

Bonus Topics (Not For Beginners):

  • What is mutable and immutable data types
  • Opening function directory of any data types
  • Reading doc of any function
  • Copy and passing instance of the mutable datatype

Module 4: Function and Modules

Here comes the fun Part: Meme

Function:

  1. What is a function
  2. Defining and Calling a function
  3. Function with 0 to many input args
  4. Functions with optional args
  5. Calling function with key-value parameters
  6. Lambda Function
  7. Nested Functions
  8. Recurrsion
  9. Filter, Map, All and Reduce function

Module:

  1. What are modules?
  2. Using Calendar Module
  3. Using DateTime modules
  4. Creating Own module and using it in another Python file
  5. Installing External Library like Numpy, Pandas, etc

Module 5: Some Extra stuff

  • Exception Handling
  • File Handling
  • OOPs
  • Multi-Threading

Seems a lot right, But I know what you are thinking, How do I know I am doing good? Where I can find practice problems?

Don’t worry. I have two options for you:

  1. Practice on our Panda Lab.
  2. Follow us on Instagram where we put one question daily.

At the end of the article. I have shared some of our social links where you can join the community for solving your day-to-day queries.

Okay... Domino But What After Leaning Python?

Projects:

  • Car Crash Game using Pygame
  • Simple Dictionary App
  • Tic-Tac-Toe Game
  • Basic Calculator
  • Flappy bird game
  • Dice Rolling Simulator
  • Hangman
  • Desktop Notifier App
Trick meme

you are wondering.. where are the tricks and advice you stole from Rubics Computer?

Now let’ have his remark on tricks:

1. Never just accept any fact in Python, always try to run and test your own first. Like: “is” operator in python gives the wrong result in case of float. Now don’t just accept this fact, go and test it.

2. There are lots of small details that are missed by any beginners but practice leads you to find that details.
Let me tell you one more: type s = [1,2,03] and it leads to a syntax error.
See told you, Don’t believe in fact, try and test it.

3. Practice a lot, give proper time to topics. Don’t be in hurry. I don’t agree with those who claim to teach you in 6 or 10 hours. You can’t learn any language just in 10 hours, it takes time to learn anything.

4. Have a little advice, be lazy like me… try to write less code but smart code. Most people I see are writing a bunch of code for simple functionality (I am not talking about the Java guy), just be smart.

5. If you are from Java and C developer, leave your C/Java tricks behind if you want to fully utilize the power of Python and Interperate based language.

6. Don’t go for fancy editors like Pycharm, Anaconda, or anything. Idle is best if you are not working on any big project. They only increase the load on the system and mark my words, you can do code in Idle also.

Seems a lot right. I know. Rubics always keeps his stuff straightforward and Simple. After reviewing it, I am pretty sure, I am never gonna find such a straightforward setup by setup guide.
I know there are other libraries and topics which are important like OOPs, Multi-threading, etc but these are advanced topics in Python.

So, What do you think about Roadmap?

Now, I am gonna learn and Break Rubics brain-teaser box and steal his food. (HEHEHE)
See you soon. Bye Bye

Follow us on Facebook, Facebook Community, Instagram.

Check out our coding Platform PandaLab.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store