DEV Community

Cover image for 20+ Python Projects For Beginners
Fahimul Kabir Chowdhury
Fahimul Kabir Chowdhury

Posted on • Updated on

20+ Python Projects For Beginners

Python Projects For Beginners

The best way to learn any new programming language easily is to build projects.
If you Want to become a python programmer? Then you need to start practicing your python skills as soon as possible. Its a big platform. Once you finish your first tutorial or online course, you are ready to start with your first small project.

So, I came up with 20 Beginners Python Projects to help you.

For this projects I have used,
▶️ Python latest version.
▶️ Pycharm (Code Editor)

1. Sent Unlimited Message In Facebook Messenger & WhatsApp Using Python.

In this project, we will learn how to automate python to sent messages using Facebook messenger or any messaging platform. You can sent unlimited message with this python program.

Here is the tutorial for You:

2. Find Phone Number Details Using Python.

In this python program, we will learn how to find phone number details like, name of the sim organization & the country. This is very interesting project as a beginner.

Here is the tutorial for You:

3. Create Registration Form / Login Form Using Python

Lets look at this project. We are creating a python registration form using tkinter package from python. We will create a gui interface to make this form.

Here is the tutorial for You:

4. Digital Clock In Python Tkinter.

Welcome to another Python Tkinter Project. This time we will create a digital clock. Aging we will take tkinter to make a gui interface also we will import time module for counter.

Here is the tutorial for You:

5. Take Screenshot Using Python.

Another interesting project is here. We will create a python screenshot taker program. We will use tkinter for creating a gui interface and screen module for taking screenshot.

Here is the tutorial for You:

6. Create Working Login System Using Python.

In project 3 we have created a simple python registration form. And in this project we will amplify that program & will do a little bit complicated things.
This login system in python will be full functional and working. Because whenever we keep our username and password field empty, it will show an error message to the user that "all fields are required". If we put incorrect password or username, it will show another error message to the user that "Invalid username or password". And if we put correct password and username it will show a welcome message to the user. Isn't it cool?

Here is the tutorial for You:

7. Convert Images Into Pencil Sketch Using Python.

Lets create a simple photoshop program using python. We will create a program to convert any images into sketch image. More like using a sketch filer. We are using opencv in this program.

Here is the tutorial for You:

8. Track Location Using IP Address In Python.

I dont have to explain how interesting this program is. Here will will find the location in google map using python, if we have a ip address. Basically from the ip address we will extract the latitude and longitude position & then we will push those values into google map. Boom...

Here is the tutorial for You:

9. Create Snake Game In Python.

Yes, I know you've all played the Snake Game and you've all vowed never to lose. We all liked hunting for hacks as kids to avoid seeing the "Game Over" warning, but I know you'd want to make this "Snake" dance to your beats as a techie. Lets create this game.

Here is the tutorial for You:

10. Building a simple Instagram bot with Python.

In this python project, we will create a simple Instagram bot using python. Another interesting project right? Ahh Instagram... The bot we will create will keep a backup file of our Instagram account into our computer. Basically it will store all the images or posts into a folder in our computer. This project is super east & super cool.

Here is the tutorial for You:

11. Automate WhatsApp message Using Python.

Suppose you need to sent a message to your friend at midnight & you are too tired to keep awake for that long. So for avoiding this problem you can write a python program, set a time & a the message. Problem Solved.

Here is the tutorial for You:

12. Build A Mobile App With Python kivy.

Lets create your first app as a python developer. Thats right! We will create a python app for both android and ios using kivy. Kivy is a very powerful app for creating cross platform apps. This is just a basic application using kivy. No need to worry.

Here is the tutorial for You:

13. Automate Renaming and Parsing of Multiple Files With Python.

Suppose you have a bunch of files in a folder & the files are not sorted in the way they suppose to. Then you can go and rename all files manually one by one. But it is too time consuming and can be a lot of mistakes. Then why dont we write a program to rename all the files as our preference.
Lets do this then.

Here is the tutorial for You:

14. Convert Python Script To APP/Executable File.

You have done some amazing python projects. Now please dont keep those projects to yourself. Share those projects with your friends. Let them know what you have created. Now by sharing i ment sharing an app or executable file, not the source code. If you share an app or executable file, anyone can run/open that app without any programming environment. Isnt that cool? Then lets see how we can convert our python script to an executable file.

Here is the tutorial for You:

15. Find Phone Number Location In Google Map.

We already have seen a tracking project with python. Now this one is a little bit advanced. With all the information we will also show the location of the user on a google map.

Here is the tutorial for You:

16. Top 10 Basic OpenCV Methods.

Since they are closely related to artificial intelligence, computer vision and computer graphics are very popular right now. They both use the OpenCV library to perform high-level comprehension from digital images or videos (CV) or to generate images (CG).

Because of this, we're going to look at the same library that powers these important areas of computer science today to see what features you could really use!

Here is the tutorial for You:

17. Build Mobile App Using Python.

Nowadays, developers are almost certainly engaged in developing a mobile or online application. Although Python doesn't come with built-in support for mobile development, you can still build mobile apps using packages like Kivy, PyQt, or even Beeware's Toga library.

Each of these libraries is a significant player in the Python mobile ecosystem. However, there are certain advantages to using Kivy to develop mobile applications. You won't need to build your code with every update, and your application will appear the same across all platforms. Additionally, you'll be able to create your applications using Python's simple syntax.

Here is the tutorial for You:

18. Build Python Registration Form Using Kivy and save user data.

Have you remembered project no 3? In that python registration form we have created only the interface. But as we grow, we should challenge our skills. Thats why we will add some advance functionalities in this python registration form.

In this python registration form, we will add some validations. We will implement popup notifications. Also the main part, we will add functionalities to save user information such as name, email, password etc. We will write a python script to save the user details in a txt file. This project is going to be very interesting and informative.

Here is the tutorial for You:

19. Build Python Image To PDF Converter tool.

In this python project, lets create a GUI software for our self. Suppose you have a lot of images and now you have to convert them into a PDF file. You will use third party software or website do it. But you are a programmer right? Then why don't you create a software by yourself? Yes, in this project, we will create a image to PDF converter tool step by step.

Here is the tutorial for You:

You can use this projects to learn, improve your skills or for your portfolio.

Feel free to visit my YouTube channel:

Follow me on Instagram where I'm sharing lots of useful resources!
@fahimulkabir.chowdhury 😉

Top comments (7)

brtouli_mounir profile image
mounir brtouli

Nice projects ! A big thanks to you

fahimulkabir profile image
Fahimul Kabir Chowdhury


islamimtiaz profile image

Greetings, I am currently attempting to transform my python code into an APK, however, after converting it and installing the file, it unfortunately crashes right after the kivy logo appears. I am using google collab to convert my code into APK.
Spec file
Image description

from kivymd.uix.screen import MDScreen
from import MDApp
from kivy.uix.image import Image
from kivymd.uix.button import MDFillRoundFlatButton
from kivymd.uix.textfield import MDTextField
from kivymd.uix.label import MDLabel
from kivymd.uix.toolbar import MDTopAppBar
from kivymd.uix.dialog import MDDialog

class ConverterApp(MDApp):

    def flip(self):
        if self.state == 0:
            self.state = 1
            self.toolbar.title = 'CGPA calculator'
            self.GP.hint_text = 'Enter your current GPA'
            self.CH.hint_text = 'Enter your previous GPA'
            self.state = 0
            self.toolbar.title = 'GPA calculator'
            self.GP.hint_text = 'Enter your GP'
            self.CH.hint_text = 'Enter subject CH'

    def gpa(self, obj):
        gp_text = self.GP.text.strip()
        ch_text = self.CH.text.strip()
        # Check if GP and CH fields are not empty
        if not gp_text or not ch_text:
            # Show an error when GP and CH fields are empty
            dialog = MDDialog(title='Error',text='Both GP and CH fields are required',size_hint=(0.7, 1))
        # Check if entered data is valid
            gp_values = [float(gp) for gp in gp_text.split(',')]
            ch_values = [float(ch) for ch in ch_text.split(',')]
        except ValueError:
            # Show an error when non-numeric value is entered
            dialog = MDDialog(title='Error',text='Invalid input! Please enter comma-separated numbers only',size_hint=(0.7, 1))
        # Calculate GPA or CGPA
        if self.state == 0:
            x = sum(gp_values)
            y = sum(ch_values)
            if y == 0:
                # Show an error
                dialog = MDDialog(title='Error',text='Zero division error',size_hint=(0.7, 1))
                c = x / y
                self.label1.text = str(c)
                self.label.text = "Your GPA is: "
            x = sum(gp_values)
            len1 = len(gp_values)
            y = sum(ch_values)
            len2 = len(ch_values)
            b = len1 + len2
            z = (x + y) / b
            self.label1.text = str(z)
            self.label.text = 'Your CGPA is: '

    def build(self):
        self.state = 0
        screen = MDScreen()
        # Top toolbar
        self.toolbar = MDTopAppBar(title="GPA Calculator")
        self.toolbar.pos_hint = {'top':1}
        self.toolbar.right_action_items = [['rotate-3d-variant', lambda x: self.flip()]]
        # Logo
        screen.add_widget(Image(source ='gpr.png',size_hint=(0.8,1),pos_hint ={'center_x':0.5,'center_y':0.7}))
        # Collect user input
        self.GP = MDTextField(hint_text='Enter your GP',halign='center',size_hint=(0.8,1),pos_hint ={'center_x':0.5,'center_y':0.48},font_size=22)
        self.CH = MDTextField(hint_text='Enter your CH',halign='center',size_hint=(0.8,1),pos_hint ={'center_x':0.5,'center_y':0.4},font_size=22)
        # Secondary + Primary Label
        self.label = MDLabel(halign='center',pos_hint ={'center_x':0.5,'center_y':0.32},theme_text_color='Secondary')
        self.label1 = MDLabel(halign='center',pos_hint ={'center_x':0.5,'center_y':0.28},theme_text_color='Primary',font_style='H5')
        # Convert Button
        self.button= MDFillRoundFlatButton(text='Result',font_size='17',pos_hint ={'center_x':0.5,'center_y':0.15})
        self.button.bind(on_press = self.gpa)

        return screen

Enter fullscreen mode Exit fullscreen mode

Please help me

ayomisco profile image

Amazing projects, I'm going to check them out

fahimulkabir profile image
Fahimul Kabir Chowdhury


fahimulkabir profile image
Fahimul Kabir Chowdhury


noorblch profile image
Noor Baloch

Good Idea.