Complete Python Syllabus for Mastery
1. Introduction to Python
- History & uses of Python
- Installing Python (Windows/Linux)
- Python interpreters (IDLE, Jupyter, VS Code)
- Writing & running your first Python script
- Python syntax rules (indentation, comments, etc.)
2. Variables and Data Types
- What are variables?
- Naming conventions
- Basic data types: int, float, str, bool
- Type casting (converting between types)
- type() and id() functions
- Memory concept and dynamic typing
3. Control Flow (Decision Making & Looping)
- if, elif, else
- Nested if statements
- while loop
- for loop
- range() function
- Loop control statements: break, continue, pass
- Loop with else
- Pattern printing using loops
4. Operators and Expressions
- Arithmetic operators: +, -, *, /, //, %, **
- Comparison operators: ==, !=, <, >, <=, >=
- Logical operators: and, or, not
- Bitwise operators
- Assignment operators: =, +=, -=, etc.
- Operator precedence and associativity
- Expressions with parentheses
5. Data Structures (Built-in Collections)
- Strings: Slicing, indexing, string methods, escape characters, formatting
- Lists: Indexing, slicing, methods, nested lists, comprehensions
- Tuples: Immutable properties, unpacking
- Sets: Unique items, set operations
- Dictionaries: Key-value pairs, methods, nested dictionaries
6. Functions and Modules
- Defining functions with def
- Function arguments: positional, keyword, default, *args, **kwargs
- Return statement
- Lambda functions
- Recursion
- map(), filter(), reduce()
- Creating & importing modules
- __name__ == "__main__" usage
7. File Handling
- File types: text and binary
- open(), read(), write(), close()
- Reading line-by-line
- Using with context manager
- Working with CSV (csv module)
- JSON read/write (json module)
8. Error Handling (Exception Handling)
- Types of errors: syntax vs runtime
- Try, except blocks
- finally and else clauses
- Raising exceptions manually
- Built-in exception types
- Creating custom exceptions
9. Object-Oriented Programming (OOP)
- Classes and objects
- __init__ constructor
- Instance vs class variables
- Inheritance
- Polymorphism
- Encapsulation & abstraction
- Method overriding
- @classmethod, @staticmethod
- Dunder/magic methods
10. Advanced Built-in Functions & Functional Programming
- enumerate(), zip(), all(), any(), sorted()
- List/Dict comprehensions with conditions
- map(), filter(), reduce()
- Higher-order functions
11. Regular Expressions
- What is regex?
- re module: search(), findall(), match(), sub()
- Meta characters
- Grouping & pattern matching
12. Working with External Libraries
- pip package manager
- Installing libraries
- Popular libraries: numpy, pandas, matplotlib, seaborn, openpyxl, requests, geopandas
13. APIs and Web Requests
- HTTP basics (GET, POST)
- requests module
- Reading JSON from APIs
- Authenticating with APIs
- API examples: Google Maps, OpenStreetMap, Esri REST API
14. GUI Programming with Tkinter (Optional)
- Creating windows
- Buttons, labels, text boxes
- Events and callbacks
- Canvas and drawing
15. Multithreading & Multiprocessing
- What is concurrency?
- threading module
- Thread vs process
- GIL concept
- multiprocessing module
16. Unit Testing & Debugging
- assert statements
- unittest framework
- Writing test cases
- Debugging with pdb
17. Databases with Python
- sqlite3 module
- SQL queries from Python
- PostgreSQL / MySQL
- SQLAlchemy ORM
18. Data Science, GIS, and Machine Learning Intro (Advanced)
- pandas for DataFrames
- GIS: geopandas, shapely, folium, rasterio
- ML intro: scikit-learn, tensorflow basics
- Remote sensing with Google Earth Engine API