Weekly Schedule
Week 1
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Course Overview | Think Python: Chapter 1 | Lab 1: git, github.com, and Python |
- Introduction | - What is a program? | |
- Why Python? | - Input, process (sequence, looping, repetition), output | |
- Natural language & formal language | - complier, interpreter | |
git and github.com | - Debugging | |
Python components: | Automate with Python: Chapter 1: Python Basics | |
- keywords | ||
- symbols | ||
- modules | ||
- objects | ||
Python Shell | ||
- builtin modules | ||
- builtin functions: help(), dir(), type() | ||
- keyword: import |
Week 2
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Python Basics: | Think Python: Chapter 2 | Lab 2: Understanding Python Code |
- Objects | - Variable, expressions and statements | |
- Methods and properties | - Script mode and interactive mode | |
- Operators | - Python math operators and order of operations | |
- expressions | - String operation '+' and '*' | |
- statements | Automate with Python: Chapter 2: Flow Control |
Week 3
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Reusing Python Code: | Think Python: Chapter 3 Functions | Lab 3: Reusing Python Code |
Functions | - Function calls | |
- keyword: def | - Adding new functions | |
- function parameters | - Definitions and uses | |
- return value | - Flow of execution | |
- keyword: None | - Parameters and arguments | |
- Variables and parameters | ||
- Fruitful functions and void functions | ||
Automate with Python: Chapter 3 & 4: Functions, Lists |
Week 4
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Basic Data Structures and String Manipulation: | Think Python: Chapter 5 Conditionals and recursion | Lab 4: Basic Data Structure & String Manipulation |
- Integers | - Boolean expression | |
- Strings | - Logical operators | |
- Tuples | - Conditional execution | |
- Lists | - Alternative execution | |
- Dictionaries | - Chained conditionals | |
- Sets | - Nested conditionals | |
- Recursion | ||
- Infinite recursion | ||
- Keyboard Input | ||
Automate with Python: Chapter 5 & 6: Dictionaries and structuring data, Manipulating Strings |
Week 5
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Files, Exceptions: | Think Python: Chapter 14 - Files | Lab 5: Files & Error Handling |
- File Handling | - Reading and writing | |
- Error Handling | - Format operator | |
- Builtin error types | - Filenames and paths | |
- Catching exception | ||
- Databases | ||
- Picking | ||
- Pipes | ||
- Writing modules | ||
Automate with Python: Chapter 9 & 10: Reading and Writing Files, Organizing Files |
Week 6
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Review and Catch-up |
Week 7
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Mid-Term Test | Assignment 1 | |
- Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5 |
Study Week
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Week 8
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Classes: | Think Python: Chapter 15 - Classes and objects | Lab 6: Writing Python Classes |
- Components of a class | - Programmer-defined types | |
- Classes and objects | - Attributes | |
- Instances and return values | ||
- Objects are mutable | ||
- Copying | ||
Automate with Python: Chapter 16 - Classes and functions | ||
- Pure functions | ||
- Modifiers | ||
- Prototyping versus planning |
Week 9
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Classes: | Think Python: Chapter 17 - Classes and methods | Lab 7: Classes, Objects & scope |
- Designing classes | - The __init__ method | |
- Understanding scope | - The __str__ method | |
- The __repr__ method | ||
- Operator overloading | ||
- Type-based dispatch | ||
- Polymorphism |
Week 10
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Configuration management: | Lab 8: Configuration management | |
- Ansible |
Week 11
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Complete Assignment 2 | Assignment 2 |
Week 12
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Final Assessment Review |
Week 13
Topics | Reading/Reference | Tasks/Labs |
---|---|---|
Final Assessment |