Skip to content
This repository was archived by the owner on Apr 24, 2025. It is now read-only.

Commit 87a6728

Browse files
Merge pull request #554 from Manishak798/main
Added a new Python Project
2 parents 86d46e1 + 676693e commit 87a6728

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

  • projects/Personal-Finance-tracker
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
class Expense:
2+
def __init__(self, name, amount, category):
3+
self.name = name
4+
self.amount = amount
5+
self.category = category
6+
7+
class FinanceManager:
8+
def __init__(self):
9+
self.expenses = []
10+
11+
def add_expense(self, name, amount, category):
12+
expense = Expense(name, amount, category)
13+
self.expenses.append(expense)
14+
15+
def calculate_total_expenses(self):
16+
total_expenses = sum(expense.amount for expense in self.expenses)
17+
return total_expenses
18+
19+
def list_expenses(self):
20+
for expense in self.expenses:
21+
print(f"Name: {expense.name}, Amount: {expense.amount}, Category: {expense.category}")
22+
23+
# Sample usage
24+
if __name__ == "__main__":
25+
finance_manager = FinanceManager()
26+
27+
while True:
28+
print("Personal Finance Manager")
29+
print("1. Add Expense")
30+
print("2. List Expenses")
31+
print("3. Calculate Total Expenses")
32+
print("4. Exit")
33+
choice = input("Enter your choice: ")
34+
35+
if choice == "1":
36+
name = input("Expense Name: ")
37+
amount = float(input("Expense Amount: "))
38+
category = input("Expense Category: ")
39+
finance_manager.add_expense(name, amount, category)
40+
41+
elif choice == "2":
42+
finance_manager.list_expenses()
43+
44+
elif choice == "3":
45+
total_expenses = finance_manager.calculate_total_expenses()
46+
print(f"Total Expenses: {total_expenses}")
47+
48+
elif choice == "4":
49+
break

0 commit comments

Comments
 (0)