Project 9 - Due Tue Apr 7 at 23:00
Reading
- Slides and notebooks from Lec 17 (Intro to Dictionaries) and Lec 18 (Dictionary Accumulation Patterns). Material from Lec 15 (Files and File Operations) is also still somewhat relevant.
- Problems and solutions from Lab 10 (Dictionaries).
- Think Python, Ch. 11 on dictionaries.
Tasks
The instructions for each task:
-
Task 1: Shape Sorter — Write functions using list comprehensions to create & filter lists of polygon specifications, and using sorting to change their order. Finally write a function to draw those polygons so you can see the results. You must complete EITHER this task OR the measureMunger task; only one will count towards your grade. For this task, having a partner is optional but recommended.
-
Task 2: Measure Munger — Write functions using list comprehensions to create & filter lists of musical measure specifications, and using sorting to change their order. Finally write a function to play those measures so you can hear the results. You must complete EITHER this task OR the shapeSorter task; only one will count towards your grade. For this task, having a partner is optional but recommended.
- Task 3: Checklist — Define an API to use dictionaries as checklists. For this task, having a partner is optional but recommended.
About this Project
These tasks will give you practice with dictionaries, as well as reviewing material on files.
Both tasks are required.
If you want to find a partner to work with for this project, use this Google Sheet to do so.
Reminders
- Remember to download the starter code for each task from the Potluck server.
Time Estimate
Our per-task estimate for this project is 2-4 hours, plus up to an hour of reading.
How to turn in this Project
-
Upload your tasks via the Potluck server by the deadline (Tue Apr 7 at 23:00).
- For shapeSorter, each team member must submit
shapeSorter.py. - For measureMunger, each team member must submit
measureMunger.py. - For checklist, each team member must submit
checklist.py.
- For shapeSorter, each team member must submit
-
Double-check the status of your submitted tasks, since there may be warnings.
-
Reminder: you can submit as many times as you like, and only the most recent submission will count for your grade.
-
If you run into trouble with the submissions server, contact Peter Mawhorter, and include a copy of the file(s) you were trying to submit.
- Check your score for each task and submit revisions if you need to.