Difference between revisions of "OPS445 Python Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(removing links to assignments to prevent confusion among students)
 
(5 intermediate revisions by 2 users not shown)
Line 9: Line 9:
 
! Tasks/Labs
 
! Tasks/Labs
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 1:'''<br>May 9 - May 13
+
|'''Week 1:'''<br>
 
| <b>Course Overview</b>
 
| <b>Course Overview</b>
 
<ul>
 
<ul>
Line 45: Line 45:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
     <li>Automate with Python: Chapter 1 & 2
+
     <li>Automate with Python: Chapter 1
 
         <ul>
 
         <ul>
 
    <li>Python Basics</li>
 
    <li>Python Basics</li>
            <li>Flow Control</li>
 
 
         </ul>
 
         </ul>
 
     </li>
 
     </li>
Line 56: Line 55:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 2:'''<br>May 16 - May 20
+
|'''Week 2:'''<br>
 
| <b>Python Basics:</b>
 
| <b>Python Basics:</b>
 
<ul>
 
<ul>
Line 74: Line 73:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
    <li>Automate with Python: Chapter 3 & 4
+
        <li>Automate with Python: Chapter 2
 
         <ul>
 
         <ul>
             <li>Functions</li>
+
             <li>Flow Control</li>
            <li>Lists</li>
 
 
         </ul>
 
         </ul>
 
     </li>
 
     </li>
Line 86: Line 84:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 3:'''<br>May 23 - May 27 <br>(Monday is a holiday - Victoria Day)
+
|'''Week 3:'''<br>
 
| <b>Reusing Python Code:</b>
 
| <b>Reusing Python Code:</b>
 
<ul>Functions
 
<ul>Functions
Line 106: Line 104:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
     <li>Automate with Python: Chapter 5 & 6
+
     <li>Automate with Python: Chapter 3 & 4
 
         <ul>
 
         <ul>
             <li>Dictionaries and structuring data</li>
+
             <li>Functions</li>
             <li>Manipulating Strings</li>
+
             <li>Lists</li>
 
         </ul>
 
         </ul>
 
     </li>
 
     </li>
 
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 118: Line 115:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 4:'''<br>May 30 - Jun 3
+
|'''Week 4:'''<br>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
<ul>
 
<ul>
Line 142: Line 139:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
     <li>Automate with Python: Chapter 7 & 8
+
     <li>Automate with Python: Chapter 5 & 6
 
         <ul>
 
         <ul>
             <li>Regular Expressions</li>
+
             <li>Dictionaries and structuring data</li>
             <li>Reading and Writing Files</li>
+
             <li>Manipulating Strings</li>
 
         </ul>
 
         </ul>
 
     </li>
 
     </li>
 
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 154: Line 150:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 5:'''<br>Jun 6 - Jun 10
+
|'''Week 5:'''<br>
 
| <b>Files, Exceptions:</b>
 
| <b>Files, Exceptions:</b>
 
<ul>
 
<ul>
Line 176: Line 172:
 
     <li>Automate with Python: Chapter 9 & 10
 
     <li>Automate with Python: Chapter 9 & 10
 
         <ul>
 
         <ul>
 +
            <li>Reading and Writing Files</li>
 
             <li>Organizing Files</li>
 
             <li>Organizing Files</li>
            <li>Debugging</li>
 
 
         </ul>
 
         </ul>
 
     </li>
 
     </li>
Line 186: Line 182:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 6:'''<br>Jun 13 - Jun 17
+
|'''Week 6:'''<br>
 
| <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>Jun 20 - Jun 24 <br>
+
|'''Week 7:'''<br>
 
| <b>Mid-Term Test</b>
 
| <b>Mid-Term Test</b>
 
<ul>
 
<ul>
  <li>Date: THIS WEEK</li>
 
 
   <li>Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5</li>
 
   <li>Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5</li>
 
</ul>
 
</ul>
 
|  
 
|  
 
| <ul>
 
| <ul>
   <li>[[OPS445 Online Assignment 1| Assignment 1]]</li>
+
   <li>Assignment 1</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
| '''Break Week:'''<br>Jun 27 - Jul 1
+
| '''Break Week:'''<br>
 
|  
 
|  
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 8:'''<br>Jul 4 - Jul 8
+
|'''Week 8:'''<br>
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 236: Line 231:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 9:'''<br>Jul 11 - Jul 15
+
|'''Week 9:'''<br>
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 258: Line 253:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 10:'''<br>Jul 18 - Jul 22
+
|'''Week 10:'''<br>
 
| <b>Configuration management:</b>
 
| <b>Configuration management:</b>
 
<ul>
 
<ul>
Line 269: Line 264:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 11:'''<br>Jul 25 - Jul 29
+
|'''Week 11:'''<br>
 
| <b>Python Networking</b>
 
| <b>Python Networking</b>
 
<ul>
 
<ul>
Line 282: Line 277:
 
   </ul>
 
   </ul>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 12:'''<br>Aug 1 - Aug 5<br>(Monday is a holiday - Civic Day)
+
|'''Week 12:'''<br>
 
| Complete Assignment 2
 
| Complete Assignment 2
 
|  
 
|  
| [[OPS445 Online Assignment 2 | Assignment 2]]
+
| Assignment 2
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 13:'''<br>Aug 8 - Aug 12
+
|'''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>Aug 15 - Aug 19
+
|'''Week 14:'''<br>
 
| <b>Final Assessment</b>
 
| <b>Final Assessment</b>
 
|  
 
|  
 
|  
 
|  
 
|}
 
|}

Latest revision as of 12:14, 8 June 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
  • Assignment 1
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