| 2 | |
| 3 | |
| 4 | def add_expense(expenses): |
| 5 | amount = float(input("Enter the expense amount: ")) |
| 6 | category = input("Category (food, travel, shopping, bills, etc.): ") |
| 7 | date_str = input("Date (YYYY-MM-DD): ") |
| 8 | try: |
| 9 | date = datetime.datetime.strptime(date_str, "%Y-%m-%d").date() |
| 10 | except ValueError: |
| 11 | print("Incorrect date format. Please use YYYY-MM-DD format.") |
| 12 | return |
| 13 | note = input("(Optional) Note: ") |
| 14 | expenses.append( |
| 15 | {"amount": amount, "category": category, "date": date, "note": note} |
| 16 | ) |
| 17 | print("Expense added!") |
| 18 | |
| 19 | |
| 20 | def view_expenses(expenses, period="all", category_filter=None): |