PIC 16 Python with Applications

You can download the course information here.

Student Projects from Past Courses: Past Projects

Spring 2018 Tentative Course Schedule

Week 1

  • 04/02 Lecture 1: Course Overview
    – Follow instruction in GettingStarted.pdf on CCLE
    – Reading material: Python tutorial 1 and 2.1.2
  • 04/04 Lecture 2: Python Basics - Basic Data Types, commenting, list, dictionary, functions, modules
    – Reading material: Python tutorial 3.1.1, 3.1.2, 3.1.4, 5.1, 5.5
  • 04/06 Lecture 3: Python Basics - Control Flow, Functions
    – Reading material: Python tutorial 4.1 - 4.7

Week 2

  • 04/09 Lecture 4: Python Basics - Data Structures
    – Reading material: Python tutorial 5.2 - 5.5
  • 04/11 Lecture 5: Python Basics - Functional Programming
    – Reading material: Python tutorial 6.1, 8.1 - 8.4, 5.7
  • 04/13 Lecture 6: Python Basics - Classes and Objects, Magic Methods
    – Reading material: tutorialspoint

** Homework 1 due Wednesday by 5pm

Week 3

  • 04/16 Lecture 7: Regular Expressions I
    – Reading material: tutorial
    Cheat sheet
    – To test your regular expressions: pythex
  • 04/18 Lecture 8: Regular Expressions II
  • 04/20 Lecture 9: Visualization I: Turtle, Matplotlib and pyplot
    Recursion
    Matplotlib tutorial

** Homework 2 due Wednesday by 5pm

Week 4

** Homework 3 due Wednesday by 5pm

Week 5

** Homework 4 due Wednesday by 5pm

Week 6

  • 05/07 Lecture 16: Image Processing I: Grey-scale images and adding noise to an image
    Matplotlib image tutorial
  • 05/09 Lecture 17: Image Processing II: Uniform Blur and Gaussian Blur
    Blurring for Beginners
  • 05/11 Lecture 19: Page-Rank algorithm
    NetworkX Tutorial
    – Read from “Creating a graph” to “Directed graphs”
    PageRank Algorithmk
    – (Optional)https://www.geeksforgeeks.org/page-rank-algorithm-implementation

** Homework 5 due Wednesday by 5pm

Week 7

  • 05/14 Lecture 18: NLTK
    – Read the introduction to Chapter 1 of the NLTK Book.
    – Follow 1.2, 1.3, 1.4
    – Follow Chapter 1, section 3 (all)
    – Skim Chapter 1, section 5. This will give you a good overview of the issues in natural language
    – Skim Chapter 3 for processing raw text processing.
  • 05/16 Lecture 20: Linear algebra and transition matrices
    numpy.linalg
  • 05/18 Lecture 21: Symbolic Math I
    Sympy Tutorial

** Homework 6 due Wednesday by 5pm

Week 8

** Homework 7 due Friday by 5pm

Week 9

Week 10

** Homework 8 due Wednesday by 5pm

Final exam: 2018.06.11, 3 PM - 6 PM