|
Sep 21 |
- The basics of numerical types and strings
- The basics of lists, built-ins, for-loops, conditionals, and function definitions
|
- Assignment 1 [due Oct 5]
- Chris's solutions
|
- str
- list
- Using Python as a calculator
- Numeric types
- Built-in functions
- Control flow tools
- Defining functions
|
Sep 23 |
Sep 28 |
- The basics of executing files, homework formatting, dicts, and tuples
- Review exercises
|
- tuple
- dict
- set
- sorted
- collections.defaultdict
|
Sep 30 |
Oct 5 |
- Range, advanced assignments, logical statements, printing, and function definitions
- Basic file and CSV reading and writing; os.path basics
|
- Assignment 2 [due Oct 12]
- Chris's solutions
|
- range, enumerate, and others
- More on defining functions
- Reading and writing files
- glob
- os
- shutil
- csv
- json
- gzip
- pickle
- Optional: shelve, yaml
|
Oct 7 |
Oct 12 |
- In-class hackathon: Anagram finder [solved version]
|
- Assignment 3 [due Oct 19]
- Chris's solutions
|
|
Oct 14 |
Oct 19 |
- Iterators and generators
- In-class hacking using the Ed platform
|
- Assignment 4 [due Oct 26]
|
- Notes on yield
- iterators
- generators
|
Oct 21 |
Oct 26 |
- Introduction to regular expressions
- More on regular expressions
|
- Assignment 5 [due Nov 9]
|
- re
- Dataquest regular expression cheat sheet
|
Oct 28 |
Nov 2 |
Democracy Day; no class
|
Nov 4 |
- Using Jupyter notebooks
- Introduction to Pandas
[HTML version]
|
- Lucy Li's Jupyter notebook tutorial
- Pandas documentation
|
Nov 9 |
- Pandas exercises
[HTML version]
- Hackathon (== Assignment 6)
|
- Assignment 6 [HTML version; due Nov 16]
|
- Wonderful language resources from Victor Kuperman and colleagues
|
Nov 11 |
Nov 16 |
- Document formats [HTML version]
- subprocess [HTML version]
- Basic Twitter API usage [HTML version]
- Overview of visualization libraries
|
- Final projects [due December 7, 11:59 pm Pacific]
- (All coursework must be submitted by December 7, 11:59 pm Pacific)
|
- csv
- gzip
- json
- pickle
- zipfile
- textract
- PyMuPDF
- Beautiful Soup
- requests
- matplotlib
- Pandas visualization
- seaborn
|
Nov 18 |
Nov 23 |
Thanksgiving week; no classes
|
Nov 25 |
Nov 30 |
- Exception handling
- Unit testing with pytest
- Sorting
|
- pytest
- Background on unit testing
- sorted
|
Dec 2 |
- Introduction to object-oriented programming in Python
[HTML version; completed version in HTML]
- Selected homework problems as classses
- Tests for the class-based implementations
|
- Classes
|