PRACTICAL PYTHON PROJECTS
1 BEGINNER

STUDENT MARKS CALCULATOR

A console program to record student details, calculate total and percentage marks, and assign grades based on conditional criteria.

Input / Output (print, input) Arithmetic Operators (+, -, *, /, %) Control Flow (if - elif - else) Data Types (int, float, str) String Formatting / f-strings
  • • Interactive CLI input: student name, roll number, and marks across multiple subjects;
  • • Automated sum, average, percentage: and pass/fail calculations;
  • • Multi-tier grading: if-elif-else branches (A+, A, B, Fail);
  • • Formatted output summary: string formatting or f-strings.
STUDENT MARKS • ILLUSTRATIVE SUMMARY
Name: [student name]
Total: [sum]
Percentage: [percentage]
Roll: [roll number]
Average: [average]
Grade: [A+ / A / B / Fail]
Project 01 of 03 • Practical Python Series Verified Academic Milestone
PRACTICAL PYTHON PROJECTS
2 BEGINNER

PASSWORD GENERATOR

A utility tool creating customizable passwords based on user preferences.

Loops (for / while) String Methods List / String Manipulation Module Imports (secrets, string; random for non-security practice) Conditional Validation
  • • User-specified length and character selection: uppercase, lowercase, numbers, special symbols
  • • Use secrets for cryptographically strong password generation; random is designed for modelling and simulation, not security
  • • Input validation for minimum length: and valid choices
  • • Optional generated password strength evaluation
PASSWORD GENERATOR • ILLUSTRATIVE INTERFACE
Length: [user choice]
Uppercase / lowercase
Numbers / special symbols
Password: [generated output]
Project 02 of 03 • Practical Python Series Verified Academic Milestone
PRACTICAL PYTHON PROJECTS
3 INTERMEDIATE

SIMPLE ATM APPLICATION

A menu-driven learning simulation of ATM workflows and persistent user session states; not a production banking or security system.

Functions (def) Dictionaries for account / PIN / balance storage Control Flow Loop Control (break / continue) Modules / File Handling (state saved to text/JSON files or SQLite database)
  • • PIN setup, verification with maximum attempt limits, and PIN changes
  • • Balance inquiry: current available balance
  • • Deposits: positive value validation
  • • Withdrawals: insufficient balance and daily limit checks
  • • Fund transfers: to another account ID after balance verification
  • • Optional transaction log: deposits, withdrawals, and transfers
ATM MENU • LEARNING SIMULATION
• Balance inquiry
• Deposit
• Withdrawal
• Fund transfer
• PIN change
• Transaction log (optional)
Project 03 of 03 • Practical Python Series Verified Academic Milestone