Python – 12 Week Syllabus
Week 1: Introduction to Python
- Installing Python & IDEs (PyCharm, VS Code, Jupyter)
- Python Syntax & Indentation Rules
- Variables, Data Types & Type Casting
- Input & Output Functions
- Basic Operators (Arithmetic, Comparison, Logical)
- Lab: Simple Calculator Program
Week 2: Control Structures
- Conditional Statements (if, elif, else)
- Loops (for, while)
- Loop Control (break, continue, pass)
- Nested Loops
- Lab: Number Guessing Game
Week 3: Data Structures – Part 1
- Strings (indexing, slicing, methods)
- Lists (creation, indexing, slicing, methods)
- Tuples (immutability, operations)
- Sets (unique items, operations, methods)
- Lab: Build a Contact List Manager
Week 4: Data Structures – Part 2
- Dictionaries (keys, values, items)
- Nested Dictionaries & Advanced Operations
- List Comprehensions & Dictionary Comprehensions
- Iterators & Generators
- Lab: Student Marks Management System
Week 5: Functions & Modules
- Defining & Calling Functions
- Function Arguments (default, keyword, variable-length)
- Return Values
- Scope & Global vs Local Variables
- Importing & Creating Modules
- Lab: Create a Math Utility Module
Week 6: Object-Oriented Programming (OOP)
- Introduction to Classes & Objects
- Constructors (__init__)
- Instance & Class Variables
- Methods (instance, class, static)
- Inheritance & Polymorphism
- Lab: Bank Account / Library Management Class
Week 7: File Handling & Error Handling
- Reading & Writing Files (text, CSV, JSON)
- File Modes & File Operations
- Exception Handling (try, except, finally, raise)
- Custom Exceptions
- Lab: To-do List with File Storage
Week 8: Python Standard Libraries
- OS Module (file paths, directories)
- Math & Random
- Date & Time Handling
- Regular Expressions (re module)
- Collections Module (Counter, defaultdict, deque)
- Lab: Log File Analyzer
Week 9: Python & Databases
- Introduction to Databases
- SQLite with Python
- CRUD Operations (Create, Read, Update, Delete)
- Using sqlite3 & Connecting to DB
- Lab: Build a Student Database App
Week 10: Python for Web & APIs
- Introduction to Flask (or FastAPI basics)
- Creating Routes & Views
- Handling Requests & Responses
- Introduction to REST APIs
- Consuming APIs with requests library
- Lab: Weather App using OpenWeather API
Week 11: Advanced Python Concepts
- Decorators
- Itertools & Functools
- Lambda Functions & Map, Filter, Reduce
- Multithreading & Multiprocessing Basics
- Virtual Environments & Package Management (pip, venv)
- Lab: Parallel File Downloader
Week 12: Final Project & Testing
- Unit Testing with unittest & pytest
- Debugging Python Code
- Code Structuring & Best Practices (PEP8)
- Final Mini Project (choose one):
- Blog with Flask
- Inventory Management System
- API-powered Dashboard
- Final Assessment & Presentation
