This repository contains practical projects and coding exercises completed during the FNB App Academy – Introduction to Python programme.
The projects demonstrate the application of Python programming fundamentals through hands-on exercises and mini real-world applications. Throughout the programme, I developed solutions using user input, data types, arithmetic operations, conditionals, loops, functions, lists, dictionaries, and basic data processing techniques.
The goal of this repository is to document my learning journey while building a strong foundation in Python programming and problem-solving.
- Python Fundamentals
- Variables and Data Types
- User Input and Type Casting
- String Manipulation
- Arithmetic Operations
- Conditional Statements (
if,elif,else) - Loops (
forandwhile) - Functions
- Lists
- Dictionaries
- Data Validation
- Searching Algorithms
- Basic CRUD Operations
- Problem Solving
- Command-Line Application Development
A program that collects personal information from the user and displays a formatted profile card.
- Variables
- Data Types
- User Input
- String Formatting
- String Methods
- Arithmetic Operations
- f-Strings
A calculator capable of performing multiple arithmetic operations while safely handling division by zero.
- Arithmetic Operators
- Type Casting
- Conditional Statements
- Error Handling
- Mathematical Operations
- Data Formatting
A grading system that calculates student averages, assigns grades, determines pass/fail status, and identifies subjects requiring intervention.
- Conditional Statements
- Average Calculations
- Decision Making
- Report Generation
A complete class report generator that processes multiple student records, calculates grades, computes class statistics, and allows searching for students.
- Lists
- Dictionaries
- Loops
- Nested Data Structures
- Searching
- Statistical Calculations
- Report Generation
A command-line contact management system allowing users to add, search, delete, and view contacts.
- Add Contacts
- Search Contacts
- Delete Contacts
- View All Contacts
- Functions
- Lists
- Dictionaries
- CRUD Operations
- Menu-Driven Applications
A mini phone directory that stores contacts using dictionaries and allows users to search for phone numbers.
- Dictionaries
- Dictionary Lookup
- Conditional Statements
- User Input
A banking simulation that validates withdrawal requests and updates account balances.
- Conditional Logic
- Input Validation
- Arithmetic Operations
- Banking Simulation
An interactive game score tracker that continuously accepts scores until the user exits.
- Infinite Loops
- Break Statements
- User Interaction
- Input Validation
A calculator that estimates travel fuel costs based on travel distance and petrol prices.
- Mathematical Calculations
- Type Casting
- User Input
- Formula Implementation
A simple password helper that provides secure hints without revealing the actual password.
- String Indexing
- String Methods
- User Input
- Basic Security Concepts
Additional exercises completed during the programme covering:
- Variables
- Strings
- Lists
- Dictionaries
- Loops
- Conditionals
- Type Casting
- Arithmetic
- Practice Programs
Through these practical projects I strengthened my understanding of:
- Writing clean and readable Python code
- Breaking problems into manageable solutions
- Using appropriate data structures
- Creating interactive command-line applications
- Applying programming logic to solve real-world problems
- Debugging and testing Python programs
As I continue learning Python, I plan to expand these projects by incorporating:
- File Handling
- Object-Oriented Programming (OOP)
- Exception Handling
- Database Integration
- Graphical User Interfaces (GUI)
- APIs
- Automation Scripts
- Data Analysis with Pandas
- Web Development with Flask and Django
Programme: FNB App Academy – Introduction to Python
Amantle Maakelo
GitHub: https://github.com/amantlemaakelo
"Every project represents another step in my journey toward becoming a software engineer, data professional, and technology consultant."