Python CLI Arcade is a fun, interactive command-line application that allows users to choose and play multiple terminal-based games, including Rock Paper Scissors and a Number Guessing Game. I built this project to strengthen my understanding of core Python programming concepts while creating a simple but engaging user experience. The application uses command-line argument parsing to collect the player’s name and provide personalised game messages. A central arcade menu connects the individual game modules and allows players to switch between games or exit the application. While developing the project, I gained practical experience with recursion, while loops, nested functions, closures, the nonlocal keyword, conditional logic and input validation. I also worked with Python modules, functions, enums, random number generation, type hints and application exit handling. The games maintain information such as the number of rounds played, player wins, computer wins and guessing attempts. This project helped me understand how closures can preserve state between function calls and how separate Python files can be organised into one functional command-line application. Key concepts demonstrated: Python, command-line applications, recursion, loops, closures, nested functions, nonlocal, argument parsing with argparse, modular programming, enums, random number generation, state management and user-input validation.
Python CLI Arcade — Interactive Command-Line Games

Python
Explore other Projects

Quills — AI PDF Chat & Document Assistant Web App
Quills is an AI-powered document assistant that allows users to upload PDF files and chat with their...
TypescriptNextjsPrisma ORMShadcn UiTailwind Css
See Full Details 
Putting Green Austin — Custom Artificial Turf Installation Website
A responsive, SEO-optimized landing page built for Greenscapes Artificial Turf to promote custom put...
NextjsTailwind CssTypescript
See Full Details 
Face Liveness Detection
I built a facial liveness detection software designed to verify whether a user is physically present...
NextjsTailwind CssTensorflowTypescript
See Full Details