Content

Lesson 01: Introduction

Overview

This lesson we learn:

  • What is Python? What are the advantages / disadvantages of the language? How does it compare with other programming languages?
  • The Jupyter Notebook environment. How to execute programs from the Jupyter environment.
  • Python programming language basics. Print, Assignment and Input statements.
  • Writing simple programs in Python following the Input / Process / Output model.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 02: Variables

Overview

This lesson we learn:

  • What is a variable? What is its purpose?
  • Variable assignment, and access.
  • Different data types for variables.
  • How to input variables of various types, check types, convert types, and print variables with formatting.
  • Arithmetic expressions, arithmetic operators, and operands.
  • Different ways to format output.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 03: Conditionals

Overview

In this lesson we learn:

  • How to make our code execute in a non linear fashion through the use of conditionals.
  • Relational and logical operators for making Boolean expressions which form the basis of our decisions.
  • Different types of non-linear execution like conditional execution, alternative execution, chaining, and nesting, and their appropriate uses.
  • How to handle run-time errors with try..except.

Required Reading / Viewing

Large Group Video Lecture

NOTE: Recording didn’t work, so this is from last semester.

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 04: Iterations

Overview

In this lesson we learn:

  • How to make our code execute in a non linear fashion through the use of iterations, or loops.
  • The while loop for indefinite looping, infinite loops, and the break and continue statements
  • How to build complex loops easily.
  • Definite loops (for loops) and iterators.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 05: Functions

Overview

In this lesson we learn:

  • How to use and discover other functions in modules.
  • How to inspect module contents and get help on functions.
  • The anatomy of custom functions: arguments, named arguments, return values
  • How to modularize our code with custom functions.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 06: Strings

Overview

In this lesson we learn:

  • Strings as an immutable sequence of characters.
  • Index and Slice notation for retrieving sub-strings.
  • Built-in string functions to perform operations on strings.
  • Techniques for parsing and tokenizing string data.
  • How to sanitize input with string functions.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 07: Files

Overview

In this lesson we learn:

  • The importance of a persistence layer in programming.
  • How to read, write, and append to files.
  • Techniques for reading a file a line at a time and all at once.
  • Using exception handling with files.
  • Text encodings.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 08: Lists

In this lesson we learn:

  • Lists as a mutable sequence of values.
  • Indexing list values; slice notation.
  • List functions and operations like add, remove, update, find
  • Common patterns for list management.
  • Parsing file data into lists.

Overview

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 09: Dictionaries

Overview

In this lesson we learn:

  • Dictionaries as key-value pairs.
  • Basic dictionary operations such as getting/setting keys and values
  • Common dictionary use cases, such as representing complex objects.
  • List of dictionary as an in-memory database of objects.
  • Using the json library to serialize / de-serialize json data.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 10: HTTP

Overview

In this lesson we learn:

  • Learn how HTTP, the protocol of the web works.
  • To execute HTTP requests using Python requests
  • De-serialize HTTP responses in JSON format into Python objects
  • General procedure for reading and calling API’s on the web.

Required Reading / Viewing

Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Lab Walk Through

More Resources

Lesson 11: Web API’s

Overview

In this lesson we learn:

  • How to read and use documented Web API’s
  • Learn how to structure API calls GET/POST, in header, url or query string.
  • How to perform API Authentication Via Key and OAUTH2
  • To read HTTP responses in body and headers
  • General procedure for calling any web API.

Required Reading / Viewing

### Large Group Video Lecture

Large Group Video Lecture

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 12: Pandas

Overview

In this lesson we learn:

  • What exactly is Pandas, What is data analysis?
  • How can Pandas help you perform data analysis?
  • Managing Pandas data structures.
  • Using Pandas to read and write a variety of file formats.

Required Reading / Viewing

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources

Lesson 13: Visualization

Overview

In this lesson we learn:

  • Why information visualization is important
  • The various ways to visualize information
  • The basic requirements for any visualization
  • How to plot complex visualizations such as multi-series charts and maps

Required Reading / Viewing

Lab Walk Through

Lab Walk Through

Homework Advice

Homework Advice

More Resources