Fun Things to do with Python for Beginners

Posted by Marta on February 1, 2023 Viewed 9119 times

Card image cap

In this article, I gather four fun things you can do with Python, and that can be a great practice project for anyone that just learned programming fundamentals(variables, if statements, loops, and functions). Although I implemented these beginner projects in Python, you could implement them in any other language.

Working on projects is the best way to learn a programming language. Even if you are an experienced programmer, you  never stop learning new things.

Programming moves fast; there is always a new language or technology to learn. The best way to approach learning is by doing some small mini-projects to practice the stuff you know.

It helps to assimilate the new concepts and move them to your long-term memory. Plus, building programs and projects is the best part of programming. Build stuff and keep things interesting!

The article’s focus is giving you inspiration for python beginner projects you can work on because as a beginner, you probably don’t know all functionality and exciting stuff that python offers.

After implementing these fun python beginner projects, I can assure you; you will feel confident to move to more advanced concepts.
I hope you enjoy them, and it makes your python programming journey more enjoyable.

– You know programming fundamentals(if statements, loops, and functions)
– You know how to import libraries using pip( the python dependency manager)

My advice is that you start by writing high-level steps about how to solve these problems. Below you can find how I will break down each project. If your steps are different, that is fine. There are many ways to solve the same problem! 🙂

Calculator(using the Tkinter library)

One of the simplest fun things you can do with python is a calculator. You could start with something fundamental. A text version of a calculator in the console. It should prompt the user for input: the numbers and the operation to perform. Then it will display the results and ask the user if he wants to continue. Once you get that working, you could move this behind a user interface using the Tkinter module.

Here is how I will break down the calculator(graphical version):

Step 1) Create the user interface with all the buttons – See Solution.
Step 2) Add actions(or listeners) to the number buttons, so when you click them, the number shows up in the display – See Solution.
Step 3) Add actions to the operations, so the results are displayed. – See Solution.

Note Tkinter is a built-in library, which means you don’t need to install anything extra 🙂


What about creating your own “examinator”? You could create a user interface that asks any questions you want.

Step 1) Choose the set of questions you would like to use
Step 2) Create the user interface.
Step 3) Add an action(or listener) that reacts when an answer is selected and display a message stating if the answer is correct or not.
Step 4) Add action, so when the Next button is clicked, the results are saved, and the next question is displayed.

Memory Game

Now, we are moving to game projects, my favorite fun python projects for beginners. You could implement a memory card game using the Pygame library.

Here are the game mechanisms: There are a bunch of cards all facing down. The player chooses two cards and turns them over. If the two cards are a matching pair, you will leave the cards facing up. Otherwise, the game will turn over the cards. The game continues until all cards are facing up.

Please note you will need to install the pygame library with pip before you start.

I know this project can look quite challenging for a beginner, especially if you try to create the game in one go. I will recommend you break down the game into smaller achievable steps to build the application gradually.  Not only because this approach is much more confortable, but also because every step that you complete will increase your confidence and motivation to move to the next step

Here is a way to break down this project. If these steps feel confusing or vague, you could break them down further. The “Divide and Conquer” technique.

Step 1) Display the board with the boxes – See Solution
Step 2) Fill all boxes with different game pieces(in pairs) – See Solution
Step 3) Add a board(a matrix) to keep track of the resolved boxes – See Solution
Step 4) User can click on a box, and the game piece inside will display – See Solution
Step 5) User second click in another box and both pieces are displayed – See Solution
Step 6) Check that the pieces are the same, and if so, mark the boxes as resolved – See Solution

Tetris game with pygame

And finally, Can you create your own Tetris game? This project is a bit more advanced, but after completing the other projects; you should be able to work on this. I can assure you after completing this project, you will feel proud of what you built and of your skills

As before, the key here is building the project gradually. Breaking the application into small achievable steps so the project doesn’t feel so overwhelming

Tetris Implementation Steps

You could break down this project in the following steps:

Step 1) Create the game window – See solution.
Step 2) Draw the Tetris board – See solution.
Step 3) Add a single block and make it fall – See solution.
Step 4) Stop the piece when it reaches the bottom – See solution.
Step 5) Move piece across the board – See solution.
Step 6) Score when a line is completed – See solution.
Step 7) Use full Tetris pieces – See solution.
Step 8) Rotate the Tetris pieces – See solution.

I have created a course that will walk you through each of these steps. It is a paid course; however, the first three steps are free. In case you are not interested in the full course, you could watch the beginning to get you started.

Plan a Delivery Road with Python and Graphs

If you would like to learn graph and exciting exercises you can solve with graph, check out the following article. You will learn how to find the path that takes a truck to its delivery destination. Cool problem to solve, plus you could face similar problems when doing interviews:

By now you probably want to learn more about developing project ideas and how to start a python project. I will recommend you check out the book Learn Python 3 the hard way:

This book is for beginner developers who know the fundamentals but are lost and don’t know how to approach a software project. It explains the process of starting a project: analyze your idea, design a solution, and improving your programming skills through toy projects. By the end of the course, you will know to implement a chat server with python. All explained by Zed Shaw, the author of “Learn Python the Hard Way.”

I hope you enjoy some of these fun things you can do with python and implement these beginner projects. Thank you so much for reading and supporting this blog. Happy Coding!

If you like the article, subscribe so you get notified when I publish more articles.

What next?

Project-Based Programming Introduction

Steady pace book with lots of worked examples. Starting with the basics, and moving to projects, data visualisation, and web applications

100% Recommended book for Java Beginners

Unique lay-out and teaching programming style helping new concepts stick in your memory

90 Specific Ways to Write Better Python

Great guide for those who want to improve their skills when writing python code. Easy to understand. Many practical examples

Grow Your Java skills as a developer

Perfect Boook for anyone who has an alright knowledge of Java and wants to take it to the next level.

Write Code as a Professional Developer

Excellent read for anyone who already know how to program and want to learn Best Practices

Every Developer should read this

Perfect book for anyone transitioning into the mid/mid-senior developer level

Great preparation for interviews

Great book and probably the best way to practice for interview. Some really good information on how to perform an interview. Code Example in Java