PYTHON TOPICS CHECKLIST
🔰 BEGINNER (0 to 1)
--------------------------------
✅ Syntax & Basics
- Python installation & IDE setup
- Running your first script
- Print statement
- Comments
- Indentation
🧮 Variables & Data Types
- Integers, Floats
- Strings
- Booleans
- Type casting
- type() function
📦 Basic Operators
- Arithmetic operators (+, -, *, /, //, %, **)
- Comparison operators (==, !=, >, <, >=, <=)
- Logical operators (and, or, not)
- Assignment operators (=, +=, etc.)
📚 String Operations
- Concatenation, indexing, slicing
- String methods: .upper(), .lower(), .find(), .replace(), etc.
- f-strings
🔁 CONTROL FLOW
--------------------------------
- if, elif, else
- Nested conditions
- Ternary operator (x if condition else y)
🔄 LOOPS
--------------------------------
- for loop
- while loop
- break, continue, pass
- range()
- Looping through strings, lists, etc.
- Nested loops
- else with loops
📦 DATA STRUCTURES
--------------------------------
✅ Lists
- Creating lists
- Indexing & slicing
- List methods: append(), insert(), remove(), pop(), sort(), etc.
- List comprehension
✅ Tuples
- Immutable lists
- Tuple unpacking
✅ Sets
- Unique items
- Set operations: union(), intersection(), difference(), etc.
✅ Dictionaries
- Key-value pairs
- Adding, updating, deleting
- Looping through dictionaries
- Dictionary methods: .get(), .keys(), .values(), .items()
🎯 FUNCTIONS
--------------------------------
- Defining functions with def
- Parameters vs arguments
- Return values
- Default arguments
- Variable-length arguments: *args, **kwargs
- Lambda functions
💥 EXCEPTION HANDLING
--------------------------------
- try, except
- else, finally
- Catching multiple exceptions
- Raising exceptions
🧱 MODULES & PACKAGES
--------------------------------
- import, from ... import
- Built-in modules (math, random, datetime, etc.)
- Creating your own module
- Installing external packages (pip)
📁 FILE HANDLING
--------------------------------
- Opening/reading/writing files (with open())
- File modes: 'r', 'w', 'a', 'rb', 'wb'
- File operations: .read(), .write(), .readlines()
👤 OBJECT-ORIENTED PROGRAMMING (OOP)
--------------------------------
- Classes and objects
- __init__() constructor
- self keyword
- Instance variables vs class variables
- Methods
- Inheritance
- Method overriding
- super()
- Encapsulation (private/public attributes)
- Polymorphism
- Magic/Dunder methods (__str__, __len__, __repr__, etc.)
🧪 INTERMEDIATE/ADVANCED TOPICS
--------------------------------
- Recursion
- Generators (yield)
- Iterators (__iter__, __next__)
- Decorators
- Context managers (with, __enter__, __exit__)
- Comprehensions (list, set, dict)
- map(), filter(), reduce()
- zip(), enumerate()
- Type hints / Annotations
- *args, **kwargs unpacking
TOOLS & UTILITIES
--------------------------------
- venv for virtual environments
- Logging
- Unit testing (unittest, pytest)
- Command-line arguments (argparse, sys.argv)
- time, datetime, os, sys, shutil, subprocess modules
📊 DATA & VISUALIZATION (Optional)
--------------------------------
- Working with CSV/JSON files
- pandas for data handling
- matplotlib, seaborn for charts