Labs
Labs/Sections are held weekly unless otherwise noted, and the lab handout is typically posted by the Monday afternoon before.
Lab exercises are graded not for correctness, but on completion and your ability to
explain your reasoning to the staff; we will help you through any conceptual errors or questions you have.
Up to two labs may be missed; any more unexcused absences and we reserve the right to reduce your course grade by a "level" (e.g., from a B to B-).
You should try to start the exercises, or at least read them, before your lab meets. This will allow you to use your time in lab more efficiently.
The "checking off" (having a staff member record your completion of the lab) can be done:
- during the lab session itself;
- during the first 10 minutes of (your) lab the week after the lab's release;
- during any consulting hours in the ACCEL Green room up to and including the next Tuesday after the lab;
- during TA (but not professor) office hours up to the next Wednesday 3:45pm after the lab. But students with questions about course content or assignments will have precedence over students checking in a lab.
You can consult our records of your check-offs at https://cs1110.cs.cornell.edu/labs using your NetID and login. At that site, a green-encircled checkmark next to a lab means you've been checked off; a red-encircled "x" means you haven't been.
Problems labeled as "optional" in a Lab Exercise are not required for check-off. However,
they are part of the course syllabus and should always be attempted.
Lab |
Topic |
Code |
Lab 1 handout
|
Expressions and Assignments
Learning goals: (1) get hands-on experience using Python in interactive mode via the command
shell; (2) get hands-on experience with Python types, expressions, and variables.
|
|
Lab 2 handout
|
Functions and Modules --- Some "Hi"-lights
Learning goals: Practice with: (1) the Command Shell; (2) using and editing functions defined in an external file; (3) Komodo Edit; (4) running Python scripts on the command line; (5) using one function as a helper for another.
|
|
Lab 3 handout
|
Strings and Testing
Learning goals: (1) practice with string operations and string methods; (2) writing and using test cases; (3) debugging by examining variable contents via print statements.
This lab can be checked off two weeks from distribution because of the Feb break interruption. Handout updated to fix typo on Tu Feb 13, 3:15pm. See orange text in handout.
|
|
|
There is no lab 4! (Feb break)
No new lab will be assigned for the Tues Feb 20/Wed Feb 21 date because of break.
The Wednesday lab times and locations will be staffed and will serve as open office hours for anybody to drop in on, regardless of registered section. In contrast, for the Tuesday lab times and places, no staff members will be there (we will be on break, too.)
|
|
Lab 5 handout
|
Objects; conditionals; oink! Like the title says. The file time_script.py
is optional; it is only provided in case you want to paste it into Python
Tutor (see handout for more info).
|
|
Lab 6 handout
|
Lists and Objects: Cards and Poker Hands
Because of the prelim, this lab is not due until the first ten minutes of the labs of Tue Mar 20/Wed Mar 21. But don't delay on it, since it will help with the prelim! Practice with list operations, and doing some coding with lists of objects, in this case, Cards.
|
|
|
There is no lab 7! (prelim)
No new lab will be assigned for Tues Mar 13/Wed Mar 14 because of the prelim.
The Tuesday lab times and locations will be staffed and will serve as open office hours for anybody to drop in on, regardless of registered section. In contrast, for the Wednesday lab times and places, no staff members will be there.
|
|
Lab 8 handout
|
For-loops with lists, possibly nested
|
|
Lab 9 handout
|
Recursion
You have two weeks to complete this lab, due to Spring Break.
|
|
|
There is no lab 10! (Spring Break) No one will be staffing the labs during Spring Break.
|
|
Lab 11 handout
|
Classes: Blackjack This lab gives you practice writing a class definition.
When you are done, you can play a nice game of blackjack.
|
|
Lab 12 handout
|
Subclasses, or, Cripple Mr. Onion
Because of the prelim, this lab is not due until the first ten minutes of the labs of Tue May 1/Wed May 2. But don't delay on it, since it will help with the prelim!
|
|
|
There is no lab 13! (prelim)
No new lab will be assigned for the Tues Apr 24/Wed Apr 25 dates because of the prelim.
The Tuesday lab times and locations will be staffed and will serve as open office hours for anybody to drop in on, regardless of registered section. In contrast, for the Wednesday lab times and places, no staff members will be there.
There will be a lab 14.
|
|
Lab 14 handout
|
Loops and Loop Invariants
The material will be covered on the final exam; the problems assigned are ones that students might greatly benefit from in-person feedback on.
|
|
|
There is no lab 15! Drop-in office hours instead.
|
|
|