Difference between revisions of "OPS445 Python Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
m
(removed date ranges to make weekly schedule "semester agnostic.")
Line 9: Line 9:
 
! Tasks/Labs
 
! Tasks/Labs
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 1:'''<br>Sept 5 - Sept 9
+
|'''Week 1:'''<br>
(Monday - Labour Day)
 
 
| <b>Course Overview</b>
 
| <b>Course Overview</b>
 
<ul>
 
<ul>
Line 56: Line 55:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 2:'''<br>Sept 12 - Sept 16
+
|'''Week 2:'''<br>
 
| <b>Python Basics:</b>
 
| <b>Python Basics:</b>
 
<ul>
 
<ul>
Line 85: Line 84:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 3:'''<br>Sept 19 - Sept 23
+
|'''Week 3:'''<br>
 
| <b>Reusing Python Code:</b>
 
| <b>Reusing Python Code:</b>
 
<ul>Functions
 
<ul>Functions
Line 116: Line 115:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 4:'''<br>Sept 26 - Sept 30
+
|'''Week 4:'''<br>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
<ul>
 
<ul>
Line 151: Line 150:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 5:'''<br>Oct 3 - Oct 7
+
|'''Week 5:'''<br>
 
| <b>Files, Exceptions:</b>
 
| <b>Files, Exceptions:</b>
 
<ul>
 
<ul>
Line 183: Line 182:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 6:'''<br>Oct 10 - Oct 14
+
|'''Week 6:'''<br>
(Monday - Thanksgiving)
 
 
| <b>Review and Catch-up</b>
 
| <b>Review and Catch-up</b>
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 7:'''<br>Oct 17 - Oct 21 <br>
+
|'''Week 7:'''<br>
 
| <b>Mid-Term Test</b>
 
| <b>Mid-Term Test</b>
 
<ul>
 
<ul>
Line 198: Line 196:
 
   <li>[[OPS445 Online Assignment 1| Assignment 1]]</li>
 
   <li>[[OPS445 Online Assignment 1| Assignment 1]]</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
| '''Break Week:'''<br>Oct 24 - Oct 28
+
| '''Break Week:'''<br>
 
|  
 
|  
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 8:'''<br>Oct 31 - Nov 4
+
|'''Week 8:'''<br>
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 233: Line 231:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 9:'''<br>Nov 7 - Nov 11
+
|'''Week 9:'''<br>
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 255: Line 253:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 10:'''<br>Nov 14 - Nov 18
+
|'''Week 10:'''<br>
 
| <b>Configuration management:</b>
 
| <b>Configuration management:</b>
 
<ul>
 
<ul>
Line 266: Line 264:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 11:'''<br>Nov 21 - Nov 25
+
|'''Week 11:'''<br>
 
| <b>Python Networking</b>
 
| <b>Python Networking</b>
 
<ul>
 
<ul>
Line 279: Line 277:
 
   </ul>
 
   </ul>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 12:'''<br>Nov 28 - Dec 2
+
|'''Week 12:'''<br>
 
| Complete Assignment 2
 
| Complete Assignment 2
 
|  
 
|  
 
| [[OPS445 Online Assignment 2 | Assignment 2]]
 
| [[OPS445 Online Assignment 2 | Assignment 2]]
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 13:'''<br>Dec 5 - Dec 9
+
|'''Week 13:'''<br>
 
| <b>Final Assessment Review</b>
 
| <b>Final Assessment Review</b>
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 14:'''<br>Dec 12 - Dec 14 (Wednesday)
+
|'''Week 14:'''<br>
 
| <b>Final Assessment</b>
 
| <b>Final Assessment</b>
 
|  
 
|  
 
|  
 
|  
 
|}
 
|}

Revision as of 12:13, 19 January 2023

OPS445 Weekly Task Update
Week Topics Reading/Reference Tasks/Labs
Week 1:
Course Overview
  • Introduction
  • Why Python?
  • Natural language & formal language

git and github.com

Python components:

  • keywords
  • symbols
  • modules
  • objects

Python Shell

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