Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Challenge: Generate a Simple Expense Report | Visualizing and Presenting Information
Python for Daily Tasks

bookChallenge: Generate a Simple Expense Report

Tehtävä

Swipe to start coding

Write a function that prints a neatly formatted table of items and expenses, including the total expense at the end.

  • Print each item and its amount, formatted in aligned columns.
  • After listing all items, print a row with the total amount, labeled "Total".
  • The amount for each item and the total should be displayed with two decimal places.

Ratkaisu

12345678910111213141516171819
def print_expense_report(expenses): print("Item | Amount") print("-------------|-------") total = 0 for item, amount in expenses: line = f"{item:<12} | ${amount:>6.2f}" print(line) total += amount total_line = f"{'Total':<12} | ${total:>6.2f}" print("-------------|-------") print(total_line) expenses = [ ("Groceries", 54.32), ("Utilities", 120.00), ("Coffee", 8.50), ("Internet", 45.99) ] print_expense_report(expenses)
copy
123456789101112
def print_expense_report(expenses): print("Item | Amount") print("-------------|-------") # Write your code here expenses = [ ("Groceries", 54.32), ("Utilities", 120.00), ("Coffee", 8.50), ("Internet", 45.99) ] print_expense_report(expenses)
copy

Write a function that prints a neatly formatted table of items and expenses, including the total expense at the end.

  • Print each item and its amount, formatted in aligned columns;
  • After listing all items, print a row with the total amount, labeled "Total";
  • The amount for each item and the total should be displayed with two decimal places.

Unit Test Checklist

  • Each item and its amount are printed in aligned columns;
  • The total amount is printed after all items, labeled "Total";
  • Amounts, including the total, are formatted with two decimal places;
  • The function handles an empty list of expenses by showing only headers and the total as 0.00.
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 5
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain how the columns should be aligned if the item names are longer?

What should the function do if the expenses list is empty?

Can you show an example with different data?

close

bookChallenge: Generate a Simple Expense Report

Pyyhkäise näyttääksesi valikon

Tehtävä

Swipe to start coding

Write a function that prints a neatly formatted table of items and expenses, including the total expense at the end.

  • Print each item and its amount, formatted in aligned columns.
  • After listing all items, print a row with the total amount, labeled "Total".
  • The amount for each item and the total should be displayed with two decimal places.

Ratkaisu

12345678910111213141516171819
def print_expense_report(expenses): print("Item | Amount") print("-------------|-------") total = 0 for item, amount in expenses: line = f"{item:<12} | ${amount:>6.2f}" print(line) total += amount total_line = f"{'Total':<12} | ${total:>6.2f}" print("-------------|-------") print(total_line) expenses = [ ("Groceries", 54.32), ("Utilities", 120.00), ("Coffee", 8.50), ("Internet", 45.99) ] print_expense_report(expenses)
copy
123456789101112
def print_expense_report(expenses): print("Item | Amount") print("-------------|-------") # Write your code here expenses = [ ("Groceries", 54.32), ("Utilities", 120.00), ("Coffee", 8.50), ("Internet", 45.99) ] print_expense_report(expenses)
copy

Write a function that prints a neatly formatted table of items and expenses, including the total expense at the end.

  • Print each item and its amount, formatted in aligned columns;
  • After listing all items, print a row with the total amount, labeled "Total";
  • The amount for each item and the total should be displayed with two decimal places.

Unit Test Checklist

  • Each item and its amount are printed in aligned columns;
  • The total amount is printed after all items, labeled "Total";
  • Amounts, including the total, are formatted with two decimal places;
  • The function handles an empty list of expenses by showing only headers and the total as 0.00.
Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 5
single

single

some-alt