A Project Report On Bank Management System
A Project Report On Bank Management System
By – Ravi Mittal
Yash Rawat
Class-12th science
Subject- IP
A PROJECT REPORT ON
IN PYTHON
PAGE- 1
CERTIFICATE
This certifies that Ravi Mittal and Yash Rawat of Class XII B
successfully completed a "Bank Management System" project under
my supervision vision in the computer lab of modern school Noida
sec-11 s-1in the session 2024-25. They demonstrated strong
programming skills and excellent teamwork.
Date: [ ]
Signature:[ ]
[ ]
PAGE- 2
ACKNOWLEDGEMENT
PAGE- 3
INDEX
1. INTRODUCTION 4-5
i. ABOUT BANK
MANAGEMENT
SYSTEM
2. FRONT END 6
(PANDAS,MATPLOTLID)
3. CSV STRUCTURE 8
4. OUTPUT 17-19
5. BIBLIOGRAPHY 20
PAGE- 4
PAGE- 5
INTRODUCTION
PAGE- 6
ABOUT PANDAS: (working on front end)
A panda is a powerful and widely-used open-source data manipulation
and analysis library for Python, designed to provide flexible and efficient
data structures for handling structured data. At its core, Pandas
introduces two primary data structures: Series, which is a one-
dimensional labelled array capable of holding any data type, and Data
Frame, a two-dimensional labelled data structure similar to a table in a
database or a spreadsheet. With its intuitive syntax, Pandas allows
users to easily perform a variety of operations, such as data cleaning,
transformation, aggregation, and visualization. It supports a wide range
of data formats, including CSV, Excel, SQL databases, and more,
making it an essential tool for data scientists and analysts. The library's
robust functionality, combined with its ability to handle large datasets
efficiently, has made it a cornerstone of the Python data analysis
ecosystem, enabling users to derive insights and make data-driven
PAGE- 8
CSV FILE STRUCTURE
PAGE- 9
SOURCE CODE
import numpy as np
import pandas as pd
class Bank:
def _init_(self):
if account_number in self.accounts:
else:
self.accounts[account_number] = {
'Balance': initial_balance
if account_number in self.accounts:
PAGE- 10
account = self.accounts[account_number]
else:
if account_number in self.accounts:
self.accounts[account_number]['Balance'] += amount
print("Deposit successful!")
else:
if account_number in self.accounts:
self.accounts[account_number]['Balance'] -= amount
print("Withdrawal successful!")
else:
print("Insufficient balance!")
else:
def visualize_data(self):
PAGE- 11
if not self.accounts:
return
plt.figure(figsize=(10, 6))
plt.xlabel('Account Holder')
plt.ylabel('Balance')
plt.title('Account Balances')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
df = pd.DataFrame.from_dict(self.accounts, orient='index').reset_index()
df.to_csv(filename, index=False)
PAGE- 12
print(f'Accounts data saved to {filename} successfully.')
try:
df = pd.read_csv(filename)
except FileNotFoundError:
except pd.errors.EmptyDataError:
except Exception as e:
def manager_login():
manager_username = "admin"
manager_password = "password123"
print("Manager Login")
PAGE- 13
if username == manager_username and password == manager_password:
print("Login successful!")
return True
else:
return False
def main():
if not manager_login():
bank = Bank()
while True:
print("3. Deposit")
print("4. Withdraw")
PAGE- 14
print("8. Exit")
if choice == '1':
bank.check_balance(account_number)
bank.deposit(account_number, amount)
bank.withdraw(account_number, amount)
bank.visualize_data()
PAGE- 15
bank.save_accounts_to_csv()
bank.read_accounts_from_csv()
break
else:
if _name_ == "_main_":
main()
PAGE- 16
OUTPUT
PAGE- 17
PAGE- 18
PAGE- 19
BIBLIOGRAPHY
BOOKS:
SUMITA ARORA-COMPUTER SCIENCE WITH
PYTHON
ARIHANT- ALL IN ONE COMPUTER SCIENCE CBSE
INTERNET:
WEBSITE: WWW.PYTHON.ORG
WEBSITE: WWW.WIKIPEDIA.ORG
PAGE- 20