Track 17 · Lesson 4 of 12
Project: personal expense tracker
Build an expense tracker that loads and saves expenses as JSON, validates new entries, totals spending by category and month, and warns when a budget is close to running out.
You will be able to
- Design a small program as a set of single-purpose functions around one data format
- Load and save program state as JSON, handling missing, empty and corrupt files deliberately
- Validate user-supplied data and raise ValueError with a message that says what was wrong
- Aggregate records by category and by month with dictionaries
- Compare spending against budgets and produce a readable monthly report
Included with a Formula Quest membership
It has 6 graded exercises with feedback, hints and solutions. Python Quest is included in Formula Quest memberships that cover Python; membership and billing are managed on Formula Quest.
View Formula Quest memberships
Tracks 1 and 2, the first lesson of every track, the playground and the dataset library are free.