|
Goal
Strengthen problem-solving and programming skills by learning advanced Python concepts such as file handling, JSON, modules, libraries, error handling, and object-oriented programming. Students learn to model real world objects and relationships, and apply these concepts through hands-on projects while learning to write more robust, organized, and reusable programs.
Target Audience
Students who have completed Intermediate Python or are comfortable with lists, strings, functions, and basic dictionaries.
Note: Each session is hands-on and interactive. Students practice coding independently and work on small projects to apply concepts learned.
Session 1 – Review, Modules & Clean Code
- Recap of basics and intermediate topics
- Creating and using modules and Python's standard libraries (math, random, statistics)
- Writing clean, readable and well-organized code
Session 2 – File Handling: Text Files
- Reading and writing text files
- File modes: "r","w" and "a"
- Using context manager with
with open()
Session 3 – JSON & Structured Data
- Introduction to JSON
- Saving and loading lists and dictionaries
- Working with nested data and json.dump() / json.load()
Session 4 – Advanced Data Structures
- Sets and set operations
- Tuples and immutable data
- Working with nested lists and dictionaries
Session 5 – Error Handling
- Try, except, finally blocks
- Common Python errors and debugging techniques
- Raising exceptions
Session 6 – Functions, Scope & Comprehensions
- Keyword arguments and default values
- Global vs local scope
- Lambda functions
- List, dictionary and set comprehensions
Session 7 – OOP Basics
- Classes and objects
- Attributes and methods
- Constructors
__init__
- Small class-based program
Session 8 – OOP Advanced
- Inheritance, encapsulation, polymorphism
- Mini project using classes
Session 9 – Mini Projects
- Projects combining files, OOP, libraries and comprehensions
- Examples: simple bank system, text analyzer with file input, mini inventory system
Session 10 – Final Projects
- Larger projects integrating multiple advanced concepts
- Examples: quiz game with file based questions and score tracking, menu-driven program, advanced contact book using classes and comprehensions, text based adventure game with inventory
|