Skip to content

amarnathrastogi/Python-ATM-Banking-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 

Repository files navigation

ATM Banking System – Python OOP Project

πŸ“Œ Project Overview

This project is a console-based ATM Banking System developed using Python and Object-Oriented Programming (OOP).

I built this project as a serious practice exercise to deepen my understanding of OOP concepts such as class design, encapsulation, method interaction, and structured program flow.

As an aspiring Data Scientist, I believe strong programming fundamentals are essential. This project reflects my effort to build that foundation through practical implementation.


πŸš€ Features

  • Account Creation
  • Secure Login with 4-digit PIN
  • Deposit and Withdrawal
  • Balance Inquiry
  • PIN Change
  • Input Validation
  • Exception Handling

🧠 Technical Concepts Applied

  • Object-Oriented Programming (OOP)
  • Classes and Objects
  • Encapsulation
  • Dictionary for managing multiple accounts
  • Exception Handling (try-except)
  • Control Flow (Loops and Conditionals)
  • Separation of Concerns (Logic vs Control)

πŸ— System Design Approach

The system is divided into two main classes:

Account Class

Handles all account-level operations:

  • PIN verification
  • Balance management
  • Deposit and withdrawal logic
  • PIN updates

ATM Class

Responsible for:

  • Managing multiple accounts
  • User authentication
  • Menu handling
  • Program execution flow

This separation improves readability, modularity, and scalability.


πŸ“š What This Project Represents

  • A strong focus on understanding core programming fundamentals
  • Practical implementation of OOP concepts
  • Structured thinking while designing systems
  • Continuous improvement and growth mindset

βš™ How to Run

python atm.py

---

## πŸ‘¨β€πŸ’» Author

**Amarnath Rastogi**  
Aspiring Data Scientist  
Currently strengthening core programming and OOP fundamentals through practical projects.

This is my second structured Python project, focused on building strong object-oriented design and error handling skills.

GitHub: https://github.com/your-username  
LinkedIn: https://linkedin.com/in/your-linkedin-id

About

Console-based ATM Banking System built using Python OOP with clean architecture and exception handling.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages