Engineering student learning Python and problem-solving.
Building consistency through daily learning and GitHub practice.
Python 30-Day Learning Journey
Day 1: Introduction to Python, what Python is used for, installing Python, and writing the first print() program.
Day 2: Understanding variables, assigning values, basic data types (int, float, string, boolean), and simple arithmetic operations.
Day 3: Taking user input using input(), type conversion, using f-strings, and writing small input-output programs.
Day 4: String concepts such as indexing, slicing, string methods, and basic string manipulation programs.
Day 5: Python operators including arithmetic, relational, logical, assignment, and membership operators with examples.
Day 6: Lists in Python, creating lists, accessing elements, list methods, updating values, and nested lists.
Day 7: Tuples and sets, differences between list, tuple, and set, basic operations on tuples and sets.
Day 8: Dictionaries in Python, creating dictionaries, accessing keys and values, adding and updating items, removing elements, and dictionary methods.
Day 9: Learned decision making in Python using if, else, elif, logical operators, indentation, and nested if-else with real-life examples.
Day 10: Learned loops in Python including while loop, break and continue statements, nested while loops, and taking user input using loops.
Day 11: Learned for loops in Python including range(), enumerate(), break and continue, for-else, dictionary iteration, and nested for loops.
Day 12: Learned using for loops with lists and dictionaries, range(), list comprehension, dictionary comprehension, and handling list input using split().
Day 13: Learned debugging in Python, understanding execution flow, tracing loops step by step, and identifying errors and logical flaws.
Day 14:
Learned Python functions including defining and calling functions, parameters and default arguments, return values, and understanding local and global variables with practice examples.
Day 15: Learned advanced Python functions including keyword arguments, *args, **kwargs, lambda functions, recursion, and nested functions.
Day 16:
Started Object-Oriented Programming (OOP) in Python. Learned core concepts such as procedural vs OOP approach, classes, objects, attributes, and methods, with real-world examples to understand modular and reusable code design.
Day 17:
Continued Object-Oriented Programming (OOP) in Python. Learned about constructors (__init__()), the self keyword, instance variables, default parameters in constructors, and creating multiple objects. Practiced real-world examples like Human and Employee classes to understand object initialization and method usage.
Day 18:
Learned the four pillars of Object-Oriented Programming (OOP) in Python:
Encapsulation, Abstraction, Inheritance, and Polymorphism. Understood how these principles help in writing secure, reusable, and maintainable code using real-world examples.
Day 19:
Learned advanced Object-Oriented Programming concepts in Python including getters and setters for controlled data access, method overloading and method overriding, and abstract classes to enforce consistent behavior across subclasses. Practiced these concepts with real-world examples to improve code scalability and structure.
Day 20:
Learned Menu-Driven Programs in Python. Built a simple calculator using loops and conditional statements to perform basic operations like addition, subtraction, multiplication, and division.
Day 21:
Practiced Object-Oriented Programming by designing real-world systems such as Banking, Library, Hospital, E-Commerce, and Student Report Card systems to strengthen understanding of encapsulation, inheritance, polymorphism, and abstraction.
Day 22:
Learned SOLID principles in Python including SRP, OCP, LSP, ISP, and DIP, and understood how they help in writing clean, maintainable, and scalable object-oriented code.
Day 23:
Learned Errors and Exception Handling in Python.
Understood syntax errors vs runtime exceptions, common built-in exceptions,
and handled errors using try, except, else, and finally.
Practiced writing safe and crash-free programs with real-world examples.
Day 24:
Learned File Handling in Python including reading, writing, and appending files.
Practiced file modes (r, w, a), used with statement for safe file handling,
processed file data line by line, and understood common file-related errors with hands-on examples.
Day 25:
Learned Python Modules, Packages, and Libraries. Understood how to organize code into reusable modules,
structure packages, use import statements effectively, and follow best practices for clean and maintainable Python projects.
Day 26:
Learned how to use third-party Python packages from PyPI. Created practical mini projects including
generating a QR code for my GitHub profile and building a simple currency converter using external Python libraries.
Day 27:
Learned Python’s match-case statement (Python 3.10+), an alternative to multiple if-elif conditions, and practiced writing clean and readable conditional logic with real examples.
Day 28:
Learned Decorators in Python. Understood how decorators modify the behavior of functions without changing their original code, learned about functions as first-class objects, and practiced using decorators for logging and access control to write clean and reusable code.
Day 29:
Learned functional programming concepts in Python using map(), filter(), and reduce().
Practiced transforming data, filtering values based on conditions, and reducing lists to single results using real-world examples.
Day 30:
Learned functional programming concepts in Python using map(), filter(), and reduce().
Practiced transforming data, filtering values based on conditions, and reducing lists to single results using real-world examples.
Skills
Python
Problem Solving
HTML & CSS
Daily Motivation
“Consistency beats motivation. Small steps every day create big results.”