Difference between revisions of "OPS435 Python Weekly Schedule 2020 Summer"

From CDOT Wiki
Jump to: navigation, search
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
[[Category:OPS435]][[Category:rchan]]
 
{| class="wikitable" cellspacing="0" width="100%" cellpadding="5" border="1" style="text-align: left; vertical-align: top; border-spacing: 2px; border: 1px solid darkgray"
 
{| class="wikitable" cellspacing="0" width="100%" cellpadding="5" border="1" style="text-align: left; vertical-align: top; border-spacing: 2px; border: 1px solid darkgray"
 
|+ OPS435 Weekly Task Update
 
|+ OPS435 Weekly Task Update
Line 13: Line 14:
 
   <li>Introduction</li>
 
   <li>Introduction</li>
 
   <li>Why Python?</li>
 
   <li>Why Python?</li>
   <li>Languate: natural & formal</li>
+
   <li>Natural languate & formal language</li>
 
</ul>
 
</ul>
<b>Python Environment</b>
+
<b>git and github.com</b>
 
<ul>
 
<ul>
   <li>Concepts:
+
</ul>
      <ol><li>keywords</li>
+
<b>Python components:</b>
          <li>builtins</li>
+
<ul>
      </ol>
+
   <li>keywords</li>
   </li>
+
  <li>symbols</li>
   <li>Python Shell:
+
  <li>modules</li>
<ol><li>help()</li>
+
  <li>objects</li>
    <li>dir()</li>
+
</ul>
            <li>type()</li>
+
<b>Python Shell</b>
            <li>import</li>
+
<ul>
        </ol>
+
   <li>builtin modules</li>
  </li>
+
   <li>builtin functions:<ul>
 +
      <li>help()</li>
 +
      <li>dir()</li>
 +
      <li>type()</li>
 +
      </ul></li>
 +
  <li>keyword: import</li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 39: Line 45:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 +
    <li>Automate with Python: Chapter 1 & 2
 +
        <ul>
 +
    <li>Python Basics</li>
 +
            <li>Flow Control</li>
 +
        </ul>
 +
    </li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_1 |Lab 1:<br>Setup &amp; Using Python]]</li>
+
   <li>[[OPS435_Online_Lab1 |Lab 1:<br>git, github.com, and Python]]</li>
 
</li>
 
</li>
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 2:May 25-29
 
| 2:May 25-29
 
| <b>Python Basics:</b>
 
| <b>Python Basics:</b>
 
<ul>
 
<ul>
 
   <li>Objects</li>
 
   <li>Objects</li>
   <li>Variables</li>
+
   <li>Methods and properties</li>
   <li>Operations</li>
+
   <li>Operators</li>
   <li>Built-in Functions</li>
+
   <li>expressions</li>
 +
  <li>statements</li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 61: Line 74:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 +
    <li>Automate with Python: Chapter 3 & 4
 +
        <ul>
 +
            <li>Functions</li>
 +
            <li>Lists</li>
 +
        </ul>
 +
    </li>
 +
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_2 |Lab 2:<br>Understanding Python Code]]</li>
+
   <li>[[OPS435_Online_Lab2 |Lab 2:<br>Understanding Python Code]]</li>
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
 
| 3:Jun 1-5
 
| 3:Jun 1-5
 
| <b>Reusing Python Code:</b>
 
| <b>Reusing Python Code:</b>
<ul>
+
<ul>Functions
<li>Functions</li>
+
    <li>keyword: def</li>
<li>Lists</li>
+
    <li>function parameters</li>
 +
    <li>return value</li>
 +
    <li>keyword: None</li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 84: Line 106:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 +
    <li>Automate with Python: Chapter 5 & 6
 +
        <ul>
 +
            <li>Dictionaries and structuring data</li>
 +
            <li>Manipulating Strings</li>
 +
        </ul>
 +
    </li>
 +
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_3 |Lab 3:<br>Reusing Python Code]]</li>
+
   <li>[[OPS435_Online_Lab3 |Lab 3:<br>Reusing Python Code]]</li>
 
</li>
 
</li>
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 4:Jun 8-12
 
| 4:Jun 8-12
 
| <b>Basic Data Structures and String Manipulation:</b>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
<ul>
 
<ul>
<li>Tuples</li>
+
    <li>Integers</li>
<li>Lists</li>
+
    <li>Strings</li>
<li>Sets</li>
+
    <li>Tuples</li>
<li>Dictionaries</li>
+
    <li>Lists</li>
<li>Strings</li>
+
    <li>Dictionaries</li>
 +
    <li>Sets</li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 112: Line 142:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 +
    <li>Automate with Python: Chapter 7 & 8
 +
        <ul>
 +
            <li>Regular Expressions</li>
 +
            <li>Reading and Writing Files</li>
 +
        </ul>
 +
    </li>
 +
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_4 |Lab 4:<br>Basic Data Structure &amp; String Manipulation]]</li>
+
   <li>[[OPS435_Online_Lab4 |Lab 4:<br>Basic Data Structure &amp; String Manipulation]]</li>
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
Line 122: Line 159:
 
   <li>File Handling</li>
 
   <li>File Handling</li>
 
   <li>Error Handling</li>
 
   <li>Error Handling</li>
 +
  <li>Builtin error types</li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
Line 136: Line 174:
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 +
    <li>Automate with Python: Chapter 9 & 10
 +
        <ul>
 +
            <li>Organizing Files</li>
 +
            <li>Debugging</li>
 +
        </ul>
 +
    </li>
 +
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_5 |Lab 5:<br>Files &amp; Error Handling]]</li>
+
   <li>[[OPS435_Online_Lab5 |Lab 5:<br>Files &amp; Error Handling]]</li>
 
</li>
 
</li>
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 6:Jun 22-26  
 
| 6:Jun 22-26  
 
| <b>Mid-Term Test</b>
 
| <b>Mid-Term Test</b>
Line 149: Line 194:
 
|  
 
|  
 
| <ul>
 
| <ul>
   <li>[[OPS435 Assignment 1 A| Assignment 1]]</li>
+
   <li>[[OPS435 Online Assignment 1| Assignment 1]]</li>
 
   <li>Due Date: July 3, 2020</li>
 
   <li>Due Date: July 3, 2020</li>
 
</li>
 
</li>
Line 157: Line 202:
 
|  
 
|  
 
|  
 
|  
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 7:Jul 6-10
 
| 7:Jul 6-10
 
| <b>Classes:</b>
 
| <b>Classes:</b>
Line 172: Line 217:
 
  <li>Objects are mutable</li>
 
  <li>Objects are mutable</li>
 
  <li>Copying</li>
 
  <li>Copying</li>
 +
      </ul>
 +
    </li>
 +
</ul>
 +
<ul>
 +
  <li>Think Python: Chapter 16 - Classes and functions
 +
      <ul>
 +
  <li>Pure functions</li>
 +
  <li>Modifiers</li>
 +
  <li>Prototyping versus planning</li>
 
       </ul>
 
       </ul>
 
     </li>
 
     </li>
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_6 |Lab 6:<br>Writing Python Classes]]</li>
+
   <li>[[OPS435_Online_Lab6 |Lab 6:<br>Writing Python Classes]]</li>
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
Line 186: Line 240:
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>Think Python: Chapter 16 - Classes and functions
+
   <li>Think Python: Chapter 17 - Classes and methods
 
       <ul>
 
       <ul>
  <li>Pure functions</li>
+
          <li>The __init__ method</li>
  <li>Modifiers</li>
+
          <li>The __str__ methond</li>
  <li>Prototyping versus planning</li>
+
          <li>The __repr__ method</li>
      </ul>
+
          <li>Operator overloading</li>
 +
          <li>Type-based dispatch</li>
 +
          <li>Polymorphism</li>
 +
        </ul>
 
     </li>
 
     </li>
  <li>Think Python: Chapter 17 - Classes and methods
 
      <ul>
 
          <li>The __init__ method</li>
 
          <li>The __str__ method</li>
 
          <li>Operator overloading</li>
 
          <li>Type-based dispatch</li>
 
          <li>Polymorphism</li>
 
      </ul>
 
  </li>
 
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_7 |Lab 7:<br>Classes, Objects &amp; scope]]</li>
+
   <li>[[OPS435_Online_Lab7 |Lab 7:<br>Classes, Objects &amp; scope]]</li>
 
</li>
 
</li>
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 9:Jul 20-24
 
| 9:Jul 20-24
 
| <b>Configuration management:</b>
 
| <b>Configuration management:</b>
Line 214: Line 262:
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
  <li>Think Python: Chapter 16 - Classes and functions
 
      <ul>
 
  <li>Pure functions</li>
 
  <li>Modifiers</li>
 
  <li>Prototyping versus planning</li>
 
      </ul>
 
    </li>
 
 
</ul>
 
</ul>
 
| <ul>
 
| <ul>
   <li>[[OPS435_Python_Lab_8 |Lab 8:<br>Configuration management]]</li>
+
   <li>[[OPS435_Online_Lab8 |Lab 8:<br>Configuration management]]</li>
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
Line 233: Line 274:
 
   Asynchronous Python Networking</li>
 
   Asynchronous Python Networking</li>
 
</ul>
 
</ul>
 +
|
 
| <ul>
 
| <ul>
  <li>Think Python: Chapter 17 - Classes and methods
+
   <li>[[OPS435 Online Assignment 2 | Assignment 2]]</li>
      <ul>
 
          <li>The init method</li>
 
          <li>The __str__methond</li>
 
          <li>Operator overloading</li>
 
          <li>Type-based dispatch</li>
 
          <li>Polymorphism</li>
 
        </ul>
 
    </li>
 
</ul>
 
| <ul>
 
   <li>[[OPS435 Python Assignment 2 | Assignment 2]]</li>
 
 
   <li>Due on Final Assessment Week - Please check with your professor for the exact date.</li>
 
   <li>Due on Final Assessment Week - Please check with your professor for the exact date.</li>
 
</ul>
 
</ul>
|- style="vertical-align: top; background: #f9f9f9"
+
|- style="vertical-align: top; background: #e0ffff"
 
| 11:Aug 3-8
 
| 11:Aug 3-8
 
| <b>Final Assessment Test Review</b>
 
| <b>Final Assessment Test Review</b>

Latest revision as of 23:26, 10 May 2020

OPS435 Weekly Task Update
week Topics Reading/Reference Tasks/Labs
1: May 19-22 Course Overview
  • Introduction
  • Why Python?
  • Natural languate & 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 & 2
    • Python Basics
    • Flow Control
2:May 25-29 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 3 & 4
    • Functions
    • Lists
3:Jun 1-5 Reusing Python Code:
    Functions
  • keyword: def
  • function parameters
  • return value
  • keyword: None
  • Think Python: Chapter 3 Functions
    • Function calls
    • Adding new functionse
    • Definitions and usess
    • Flow of execution
    • Parameters and arguments
    • Variables and parameters
    • Fruitful functions and void functions
  • Automate with Python: Chapter 5 & 6
    • Dictionaries and structuring data
    • Manipulating Strings
4:Jun 8-12 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 7 & 8
    • Regular Expressions
    • Reading and Writing Files
5:Jun 15-19 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
    • Organizing Files
    • Debugging
6:Jun 22-26 Mid-Term Test
  • Date: THIS WEEK
  • Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5
Break Week:
Jun 29-Jul 3
7:Jul 6-10 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
8:Jul 13-17 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
9:Jul 20-24 Configuration management:
  • Fabric
  • Ansible
10:Jul 27-31 Python Networking
  • Network Client
  • Network Server
  • Asynchronous Python Networking
  • Assignment 2
  • Due on Final Assessment Week - Please check with your professor for the exact date.
11:Aug 3-8 Final Assessment Test Review Working on Assignment 2 for final assessment test
12:Aug 10-14 Final Assessment