Skip to content

shubham-kumar145/Python-Bank-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏦 Bank Management System

A simple command-line based Bank Management System developed in Python. This project was created as a Class 12 Computer Science project to demonstrate the concepts of file handling, data storage, user authentication, and banking operations.


📌 Project Overview

The Bank Management System allows users to create bank accounts, securely log in, perform transactions, view account details, and manage loan information. Data is stored locally using Python's file handling and pickle module.

This project helped in understanding:

  • Python Programming Fundamentals
  • Functions and Modular Programming
  • File Handling
  • Data Persistence using Pickle
  • User Authentication
  • Input Validation
  • Banking Transaction Logic

✨ Features

👤 Account Management

  • Create a new bank account
  • Store customer details
  • Unique account number validation
  • Aadhaar number validation
  • Mobile number validation

🔐 Authentication

  • User login system
  • Password verification
  • Change password functionality

💰 Banking Operations

  • Deposit money
  • Withdraw money
  • Balance tracking
  • Transaction history

🏦 Loan Management

  • Apply for loans
  • View current loan status

📄 Customer Information

  • View account details
  • Update mobile number
  • Update address
  • View account opening date

🛠️ Technologies Used

  • Python 3
  • Pickle Module
  • File Handling
  • Dictionaries
  • Modular Programming

📂 Project Structure

Bank-Management-System/
│
├── main table.py          # Entry point of application
├── table.py               # Main menu
├── login.py               # Login and banking operations
├── creatingaccount.py     # Account creation module
├── DATAFILE.dat           # Stores validation data
└── README.md

🚀 How to Run

Clone the Repository

git clone https://github.com/your-username/Bank-Management-System.git
cd Bank-Management-System

Run the Program

python "main table.py"

📸 Functionalities Demonstrated

Account Creation

  • Create a new customer account
  • Store customer details permanently

Login System

  • Username verification
  • Password authentication

Transactions

  • Deposit funds
  • Withdraw funds
  • Track transaction history

Account Management

  • View customer details
  • Update information
  • Change password

Loan Services

  • Request loans
  • Track loan balance

📚 Concepts Learned

Through this project, I learned:

  • Python file handling
  • Data serialization using Pickle
  • Input validation techniques
  • Modular programming
  • Menu-driven applications
  • User authentication systems
  • Banking transaction logic

⚠️ Limitations

This project was developed as a learning project and has some limitations:

  • Passwords are stored in plain text.
  • Uses Pickle instead of a database.
  • No graphical user interface (GUI).
  • Single-user local storage.
  • No encryption or advanced security mechanisms.

Future improvements could include:

  • SQLite/MySQL integration
  • Password hashing
  • GUI using Tkinter
  • Web-based version using Flask/Django
  • Improved error handling

🎯 Future Enhancements

  • Database Integration (SQLite/MySQL)
  • Secure Password Hashing
  • Graphical User Interface
  • Online Banking Features
  • Account Transfer Facility
  • Admin Dashboard
  • Transaction Receipts

👨‍💻 Author

Shubham Kumar

B.Tech (Electronics and Communication Engineering)
Birla Institute of Technology, Mesra

GitHub: https://github.com/your-username


⭐ Note

This project was originally developed as a Class 12 Computer Science project and is uploaded to GitHub as part of my programming journey and learning experience.

About

A simple Bank Management System in Python featuring account creation, login, transactions, and customer management.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages