Repository navigation
Issue 60: Total the expenses for every category #59
Description
The problem
Write a program that accepts a list of expenses containing person, category and amount and finds the total expense for every category.
The file
python-open-source-challenge/issue-60.py
That is the only file you need to open, and the only one you should change.
The function you are fixing is expense_totals(). There are 2 # TODO: comments in it. Each one sits next to something that is wrong or missing — they are clues, not answers.
What to do
- Comment
/claimbelow. A bot assigns this issue to you. - Fork the repository and create a branch:
git checkout -b fix/issue-60 - Run the file first, so you can see what failing looks like:
You will get an
python3 python-open-source-challenge/issue-60.py
AssertionError. That is expected — it is the work waiting for you. - Work through the
# TODO:comments and repair the code. - Run it again until it prints
All checks passed! - Open a pull request whose description contains
Closes #59.
How you know you are done
python3 python-open-source-challenge/issue-60.py| Output | |
|---|---|
| Before | AssertionError |
| After | All checks passed! |
Nothing else counts as finished.
Rules
- Do not rewrite the program from scratch. Reading somebody else's code and making a small, careful change is the skill this is teaching.
- Do not edit
check_solution(). That is the marking scheme. Changing the test so it agrees with your code is not a fix. - Change only
python-open-source-challenge/issue-60.py. One issue, one file, one pull request.
What you will practise
- counting and grouping values by a key
- turning a list of records into totals, averages and summaries
What to expect: one loop or one condition. If you know if and for, you have everything you need.
No prior open source experience is assumed. This repository exists so that this can be your first pull request.
Stuck?
Read check_solution() at the bottom of the file first. The assert lines spell out exactly what the function should return for a given input, and that is often clearer than the description above.
Still stuck? Comment here saying what you have tried. Asking is not failing.
Activity
PrianshuKumarSahu commentedon Oct 5, 2026
/claim
github-actions commentedon Oct 5, 2026
Assigned to @PrianshuKumarSahu. It is yours.
Next steps
git checkout -b fix/short-descriptionCloses #59in the descriptionIf you get stuck, comment here saying what you have tried. If you change your mind, comment
/unclaim— no hard feelings, that is genuinely fine.