This repository contains a collection of basic Python projects designed to enhance coding skills. Each project focuses on a specific concept or problem, providing practical hands-on experience with Python programming. Below is a description of each project and how to run them.
- Description: A simple calculator program that supports addition, subtraction, multiplication, and division.
- Features:
- Menu-driven interface for selecting operations.
- Handles invalid input and division by zero.
- Allows repeated calculations until the user chooses to exit.
- How to Run:
- Execute the script in a Python environment.
- Follow the on-screen instructions to perform calculations.
- Description: Simulates rolling a six-sided die and displays the outcome in a visual representation.
- Features:
- Randomly generates numbers from 1 to 6.
- Prints a simple graphical representation of the die face.
- Allows the user to roll repeatedly until choosing to stop.
- How to Run:
- Run the script and input
yto roll the die ornto exit. - Handles invalid inputs gracefully.
- Run the script and input
- Description: A fun guessing game where the user has five attempts to guess a randomly generated number between 0 and 100.
- Features:
- Guides the user with hints (e.g., "Try smaller" or "Try larger").
- Terminates early if the user guesses correctly.
- Displays the correct answer if all attempts are used.
- How to Run:
- Execute the script and follow the on-screen prompts.
- Enter numbers within the specified range (0-100).
- Description: A screen recorder that captures the screen and saves the recording as a video file.
- Features:
- Records the screen for a user-specified duration.
- Displays a live preview while recording.
- Outputs the recording as a
.avifile.
- How to Run:
- Install the required libraries:
opencv-python,pandas,numpy, andpyautogui. - Run the script, enter the recording duration, and press
qto stop early if needed.
- Install the required libraries:
- Description: Implements a basic Round Robin scheduling algorithm for process management.
- Features:
- Accepts user input for the number of processes, arrival times, and burst times.
- Simulates Round Robin scheduling with a specified time quantum.
- Displays waiting times and turn-around times for processes.
- How to Run:
- Run the script and provide inputs as prompted.
- Follow the output for scheduling details.
- Python 3.10
- Required libraries:
randomopencv-pythonnumpypandaspyautogui
- Clone the repository or download the files.
- Install required libraries:
pip install numpy pandas opencv-python pyautogui
This project is a Password Strength Checker implemented in Python. It securely checks the strength of a user-provided password against predefined criteria and provides suggestions for improvement if the password is weak.
- Secure Input: Uses
getpassto hide the password while typing. - Strength Validation: Checks for:
- Minimum password length (8 characters)
- Presence of lowercase and uppercase letters
- Presence of at least one number
- Presence of at least one special character (
!@#$%^&*())
- Interactive Feedback: Provides clear, actionable suggestions to improve the password.
- Loop Until Strong: The program continues prompting until a strong password is entered.
- Python 3
- getpass: For secure password input
- re (Regex): For pattern matching and validating password criteria
-
Clone the Repository:
git clone https://github.com/yourusername/password-strength-checker.git cd password-strength-checker -
Run the Script:
Run the Python file in your terminal or any Python IDE:python password_strength_checker.py
-
Input Password:
Enter your password when prompted. The program will validate it and guide you to strengthen it if necessary.
Enter your password: ********
Weak password. Improve it by fixing the following:
- Add at least one uppercase letter (A-Z).
- Add at least one special character (!, @, #, $, %, ^, &, *, (, )).
Enter your password: StrongPass123!
Password is strong! No one can hack your account.A strong password must satisfy the following conditions:
- Minimum Length: At least 8 characters.
- Lowercase Letters: Contains at least one lowercase letter (
a-z). - Uppercase Letters: Contains at least one uppercase letter (
A-Z). - Numbers: Contains at least one digit (
0-9). - Special Characters: Contains at least one symbol (
!@#$%^&*()).
Contributions are welcome!
- Fork the repository.
- Create a new branch for your feature/bug fix:
git checkout -b my-new-feature
- Commit your changes:
git commit -m "Add some feature" - Push to your branch:
git push origin my-new-feature
- Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
Special thanks to the Python community for their libraries and resources.