DEV Community

Romulo Gatto
Romulo Gatto

Posted on

Basic Python Projects for Beginners

Basic Python Projects for Beginners

If you've just started learning Python and want to put your skills into practice, you're in the right place. In this article, we'll explore some basic Python projects that are perfect for beginners. These projects will not only help you reinforce your understanding of Python concepts but also give you a sense of accomplishment.

1. Guess the Number

Description: In this project, you will create a simple game where the computer picks a random number between 1 and 100, and the player has to guess it.

Skills Covered: Random module, conditional statements (if-else), loops (while), user input

Step-by-Step Guide:

a. Import the random module to generate a random number.

import random
Enter fullscreen mode Exit fullscreen mode

b. Set up an infinite loop using while True until the user guesses correctly.

while True:
    # Code goes here...
Enter fullscreen mode Exit fullscreen mode

c. Use the random.randint() function to generate a random number between 1 and 100.

secret_number = random.randint(1, 100)
Enter fullscreen mode Exit fullscreen mode

d. Prompt the user to enter their guess using input().

guess = int(input("Enter your guess: "))
Enter fullscreen mode Exit fullscreen mode

e. Compare the user's guess with the secret number using if-else statements.

if guess == secret_number:
    print("Congratulations! You guessed it right.")
    break # Exit from the loop if guessed correctly

elif guess < secret_number:
    print("Too low! Try again.")

else:
    print("Too high! Try again.")
Enter fullscreen mode Exit fullscreen mode

2. Calculator Program

Description: Create a calculator program that can perform basic arithmetic operations such as addition, subtraction, multiplication, and division.

Skills Covered: Functions, arithmetic operators (+ - * /), error handling

Step-by-Step Guide:

a. Define a function to handle each operation (addition, subtraction, multiplication, division).

def add(num1, num2):
    return num1 + num2

def subtract(num1, num2):
    return num1 - num2

# Multiply and divide functions go here...
Enter fullscreen mode Exit fullscreen mode

b. Prompt the user to enter two numbers and the desired operation using input().

num1 = float(input("Enter the first number: "))
num2 = float(input("Enter the second number: "))
operation = input("Enter the operation (+,-,* or /): ")
Enter fullscreen mode Exit fullscreen mode

c. Use conditional statements to determine which operation to perform.

if operation == '+':
    result = add(num1, num2)

elif operation == '-':
    result = subtract(num1, num2)

# Multiply and divide conditions go here...

else:
    print("Invalid operation")
Enter fullscreen mode Exit fullscreen mode

d. Print out the result.

print(f"The result is: {result}")
Enter fullscreen mode Exit fullscreen mode

3. To-Do List Manager

Description: Create a command-line-based program that allows users to manage their daily tasks in a simple to-do list.

Skills Covered: Lists, loops (for), file handling (open(), read(), write())

Step-by-Step Guide

a. Read existing tasks from a text file (tasks.txt) into a list using file handling operations.

with open('tasks.txt', 'r') as f:
    tasks = f.read().splitlines()
Enter fullscreen mode Exit fullscreen mode

b. Display menu options for adding tasks and displaying existing ones.

while True:
    print("\nMenu:")
    print("1) Add Task")
    print("2) View Tasks")

    option = input("\nEnter your choice (1 or 2): ")

   # Add Task and View Tasks conditions go here...
Enter fullscreen mode Exit fullscreen mode

c. Depending on the user's choice, prompt them to enter a task or display the existing tasks.

if option == '1':
    new_task = input("\nEnter a new task: ")
    tasks.append(new_task)

elif option == '2':
    print("\nTasks:")
    for i, task in enumerate(tasks):
        print(f"{i+1}) {task}")
Enter fullscreen mode Exit fullscreen mode

d. Allow users to save their tasks back to the file before exiting.

with open('tasks.txt', 'w') as f:
    for task in tasks:
        f.write(task + '\n')
Enter fullscreen mode Exit fullscreen mode

These projects provide a great starting point for beginners looking to practice Python programming. Remember to have fun while working on these projects, don't be afraid to experiment and add your twists! Happy coding!

Top comments (0)