Week 1: Basics of Python and Programming Concepts
Day 1:
Computer Basics: Hardware, Software, and their Classification
Compiler vs Interpreter
Day 2:
Using the Python Interpreter: Invoking the Interpreter
Argument Passing, Interactive Mode
Day 3:
The Interpreter and its Environment
Source Code Encoding
Day 4:
Informal Introduction to Python: Using Python as a Calculator
Working with Numbers, Strings, and Lists
Day 5:
First Steps Towards Programming
if Statements, for Statements
Day 6:
The range() Function, break, and continue Statements
else Clauses on Loops
Day 7:
pass Statements
Defining Functions (basic introduction)
Week 2: Functions and Data Structures
Day 8:
Default Argument Values, Keyword Arguments
Arbitrary Argument Lists
Day 9:
Unpacking Argument Lists
Lambda Expressions
Day 10:
Documentation Strings
Function Annotations
Day 11:
Lists as Stacks and Queues
Nested List Comprehensions
Day 12:
Tuples and Sequences
Sets and Dictionaries
Day 13:
Looping Techniques
Comparing Sequences and Other Types
Day 14:
Data Structures: del Statement and List Comprehensions
Week 3: Modules and Input/Output
Day 15:
Executing Modules as Scripts
The Module Search Path
Day 16:
The dir() Function
Packages: Importing from a Package
Day 17:
Intra-package References
Packages in Multiple Directories
Day 18:
Common Packages: matplotlib and numpy
Output Formatting (fancier formatting and old formatting)
Day 19:
Reading and Writing Files
Methods of File Objects
Day 20:
Saving Structured Data with JSON
Input/Output Advanced Topics
Day 21:
Mid-review of all covered topics in Week 1–3
Week 4: Errors, Classes, and Advanced Python
Day 22:
Errors and Exceptions: Syntax Errors and Exceptions
Day 23:
Raising Exceptions
User-defined Exceptions
Day 24:
Defining Clean-up Actions
Predefined Clean-up Actions
Day 25:
Classes: Introduction, Class Definition Syntax
Class and Instance Variables
Day 26:
Method Objects and Inheritance
Multiple Inheritance
Day 27:
Private Variables
Iterators and Generators
Day 28:
Generator Expressions
Odds and Ends
Week 5: Review and Practice
Day 29:
Review the content from Week 1 and Week 2
Solve simple coding problems on lists, loops, and functions
Day 30:
Review the content from Week 3 and Week 4
Practice creating modules, handling exceptions, and working with classes
Tips for Effective Study:
1. Practice Daily: Use coding platforms like Replit, Google Colab, or PythonAnywhere to
practice.
2. Use Resources:
o Python Documentation: https://docs.python.org/3/
o Platforms like W3Schools or GeeksforGeeks.
3. Break Tasks: Study for 45 minutes, then take a 5–10 minute break.
4. Review Weekly: Go over the topics covered in the week to solidify your understanding.
5. Hands-On Practice: For every concept, write at least 3 small programs to understand its
implementation.