Home
Schedule Syllabus
Programming
Assignments

Labs
Exams

## Class Schedule

Week Date Due
1 M-8/21 Ch. 1 Intro I
W-8/23 Ch. 1 & Ch. 2 Lect. #2a,
Lect. #2b
Intro II, `print()`
2 M-8/28 ma #1 Ch. 2 Lect. #3 Core basics, commenting, `input()`, `type()`, `int()`, `float()`, str, int, float, assignment operator, expressions, literals, arithmetic operators, precedence, `divmod()`, names, identifiers, keywords
W-8/30 ma #2 Ch. 2 Lect. #4 IDLE Shell window vs Editor window, use of single vs double quotes, good programming habits, floor division, modulo, namespaces
3 M-9/4
LABOR DAY
W-9/6 Ch. 3 Lect. #5 `divmod()` again, scope, scope resolution, floating-point numbers, scientific notation, `print()`, type conversion, `int()`, `float()`, `str()`, errors
4 M-9/11 Ch. 4 Lect. #6 Functions: basic function with no parameters and no returned value, function with parameters but no returned value, function with parameters and returned value, `return`, `None`
W-9/13 Ch. 4 Lect. #7 reasons for defining functions, function stubs, common errors, docstrings
5 M-9/18 Ch. 4 Lect. #8 practice writing functions
W-9/20 Ch. 5 Intro to Objects Objects, classes
6 M-9/25 Ch. 6 Lect. #10 Conditionals,`if` statements, `True`, `False`, `bool()`, relational operators, boolean variables
W-9/27
EXAM #1
7 M-10/2 Ch. 6 Lect. #11 `if-else` statements, `if-elif-else` statements, logical/Boolean operators: `and`, `or`, `not`, precedence
W-10/4 Ch. 7 Boolean operators, lists
8 M-10/9 Ch. 7 Lect. #13 operator overloading, augmented assignment, void functions and methods, mutable/immutable, `divmod()` again, tuples, lists (creating, modifying, indexing, copying), list methods: `append()`, `extend()`, loops
W-10/11 Ch. 7 Lect. #14 indexing lists of lists, augmented assignment with lists, negative indexing of a tuple, list comprehension, `for`-loops, the `range` function, using the range function i a `for`-loop
9 M-10/16 Ch. 7 Lect. #15 `enumerate()`, list functions: `all()`, `any()`, `max()`, `min()`, `sum()`, code blocks
W-10/18 Ch. 8 Lect. #16 string formatting (%d, %f, %s, %E,e), list slicing, list nesting, iterating over a multi-dimensional list
10 M-10/23 Ch. 8 Lect. #17 `enumerate()` again, `list.index()`, modifying list in a `for`-loop, passing lists to functions, sorting lists, `list.sort()`, `sorted()`, simultaneous assignment with lists of lists
W-10/25 Ch. 8
11 M-10/30 Ch. 9 Lect. #19, random_walk.py modules (e.g., os, math, cmath, statistics, random, turtle), `import`, `dir()`, `copyright()`, `license()`
W-11/1 Ch. 9 Lect. #20, jabber.txt Reading from and writing to files, `open()`, `close()`, `read()`, `readline()`, `readlines()`, `tell()`, `write()`, using files as iteratives, using the `print()` function to write to a file
12 M-11/6 Ch. 10 Lect. #21 Strings, `len()`, `s[]`, immutability, operator overloading, iterable, ASCII characters, printable vs unprintable characters, escape sequences, raw string, whitespace, sorting strings, `chr()`, `ord()`, unicode, Caesar cipher, string formatting (format string, replacement fields, format specifiers (width))
W-11/8
EXAM #2
13 M-11/13 Ch. 10 Lect. #22 format specifiers (alignment, fill and padding, maximum width and precision, type), string methods: `capitalize()`, `title()`, `swapcase()`, `upper()`, `lower()`, `count()`, `strip()`, `lstrip()`, `rstrip()`, a bit more on slicing
W-11/15 Ch. 10 Lect. #23 one more thing on slicing, more string methods: `find()`, `index()`, `replace()`, `isalnum()`, `isdigit()`, `islower()`, `isupper()`, `isspace`, `startswith`, `endswith()`, `split()`, `join()`
THANKSGIVING BREAK !!!
14 M-11/27 Ch. 11 Lect. #24 `while`-loops, `break`, `while`- vs `for`-loops
W-11/29 Ch. 12 Lect. #25 `continue`, incremental development
15 M-12/4 Ch. 13 Lect. #26 Dictionaries (associative arrays), how to create, `dict()`, common operations (indexing, adding, deleting, testing for existence), `del`, common methods: `clear()`, `get()`, `update()`, `pop()`, `items()`, `keys()`, `values()`, iterating over dictionaries, discussion of zyPA 13.4.1
W-12/6 Ch. 13
16 M-12/11
T-12/12
FINAL EXAM (8:00am - 10:00am)
W-12/13