https://github.com/gauravkg11/banking-system-project
Bank Management System in Python — Create accounts, deposit, withdraw, view transaction history, and save data persistently.
https://github.com/gauravkg11/banking-system-project
atm-simulation bank-account-management-system banking-automation banking-system data-persistence financial-application financial-system oops personal-finance python
Last synced: about 1 month ago
JSON representation
Bank Management System in Python — Create accounts, deposit, withdraw, view transaction history, and save data persistently.
- Host: GitHub
- URL: https://github.com/gauravkg11/banking-system-project
- Owner: gauravkg11
- Created: 2025-04-26T14:03:54.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-04-26T14:10:43.000Z (about 1 month ago)
- Last Synced: 2025-05-07T17:14:05.732Z (about 1 month ago)
- Topics: atm-simulation, bank-account-management-system, banking-automation, banking-system, data-persistence, financial-application, financial-system, oops, personal-finance, python
- Language: Python
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bank Management System
> A simple console-based bank management project demonstrating core Object-Oriented Programming (OOP) concepts in Python.
---
## Table of Contents
- Project Overview
- Features
- Project Structure
- Installation
- How to Run
- Technologies Used---
## Project Overview
This is a mini banking application where users can:
- Create **Savings** or **Current** accounts
- Perform **Deposits** and **Withdrawals**
- View **Transaction History**
- Maintain **Withdrawal Limits** (for Savings Accounts)
- Maintain **Minimum Balance** (for Current Accounts)
- **Save** and **Load** user data automatically with file handling (`pickle`)---
## Features
- Create Savings and Current accounts
- Deposit money
- Withdraw money with proper validations
- View transaction history
- Persistent storage using **Pickle**
- Error handling with custom exceptions---
## Project Structure
```
├── account.py # Contains BankAccount, SavingAccount, CurrentAccount classes
├── bank_system.py # Handles overall system functionalities
├── exceptions.py # Custom exception (InsufficientBalanceError)
├── transactions.py # Transaction recording class
├── main.py # User interface (CLI menu)
├── bank_data.pkl # Auto-saved data file (after running program)
└── README.md # Project documentation
```---
## Installation
1. **Clone the repository**:
```bash git clone https://github.com/your-username/bank-management-system.git cd bank-management-system```
2. **(Optional) Create a virtual environment**:
```bash python -m venv venv source venv/bin/activate # For Linux/Mac venv\Scripts\activate # For Windows```
3. **Install requirements** (not really needed, but good practice):
```bash pip install -r requirements.txt ```
---
## How to Run
Simply execute:
```bash python main.py```
Follow the menu to create accounts, deposit, withdraw, view transactions, and more!
---
## Technologies Used
- Python 3.x
- Pickle Module
- Object-Oriented Programming (OOP)---