Learn Lambda Functions by Building an Expense Tracker - Step 22

Tell us what’s happening:

maybe I’m misunderstanding but i feel like I’m passing the map() call to the list function but it says its expecting 1 argument and got 2

Your code so far

def add_expense(expenses, amount, category):
    expenses.append({'amount': amount, 'category': category})
    
def print_expenses(expenses):
    for expense in expenses:
        print(f'Amount: {expense["amount"]}, Category: {expense["category"]}')

def total_expenses(expenses):
    pass
    

# User Editable Region

test = lambda x: x * 2
print(map(test, [2, 3, 5, 8]))
list(test, [2, 3, 5, 8])

# User Editable Region


expenses = []

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36

Challenge Information:

Learn Lambda Functions by Building an Expense Tracker - Step 22

I don’t see the map function here

i had list(map(test, [2, 3, 5, 8])) but that is also incorrect.

That gets you closer. Now, you probably should only have one function call to map?

okay i think i have it now basically what i have above with the print infront and one extra ) on the end to close the print .

1 Like