A banking system developed in Python as part of the DIO (Digital Innovation One) challenges, focusing on programming logic, modularization, and software development best practices.
The application simulates common banking operations through an interactive terminal menu, allowing users to register customers, create bank accounts, make deposits and withdrawals, and view account statements.
- 💰 Deposit funds
- 💸 Withdraw funds with:
- maximum withdrawal amount per transaction;
- daily withdrawal limit;
- available balance validation.
- 📄 View account statements
- 👤 Register customers using CPF as a unique identifier
- 🏦 Create bank accounts linked to registered customers
- 📋 List all registered bank accounts
⚠️ Input validation and error handling
- Python 3
- Standard library (
datetime)
.
├── sistema_bancario.py
├── LICENSE
└── README.md
git clone https://github.com/E-ternalSpring/python-banking-system.gitcd python-banking-systempython sistema_bancario.py========== MENU ==========
[d] Deposit
[w] Withdraw
[s] Statement
[c] Register Customer
[n] New Account
[l] List Accounts
[q] Quit
==========================
=>
This project explores several important Python concepts, including:
- Function modularization
- Code organization
- Docstrings
- Exception handling (
try/except) - Positional-only and keyword-only arguments (
/and*) - Lists and dictionaries
- Conditional statements
- Loops
- User input validation
The primary goal of this project was to reinforce Python fundamentals by implementing a complete command-line banking system while applying clean code practices and function modularization.
This project is licensed under the MIT License. See the LICENSE file for more information.
Emmanuelle Espindola