paint-brush
Beginner Python Projects: Build a Simple Email Slicing Program by@mindninjax
867 reads
867 reads

Beginner Python Projects: Build a Simple Email Slicing Program

by Rishabh SinghFebruary 19th, 2021
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

An Email Slicer is just a tool that will take an email id as an input and will perform slicing operations on it to return the username and the domain.

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Beginner Python Projects: Build a Simple Email Slicing Program
Rishabh Singh HackerNoon profile picture

Hello everyone, today we will build an Email Slicer in Python.

What is an Email Slicer?

An Email Slicer is just a tool which will take an email id as an input and will perform slicing operations on it to return the username and the domain of the email id.

For example:

Input:

Output:

Your username is rishabh.singh & domain is gmail.com

Here we returned rishabh.singh as username and gmail.com as a domain.

This project is super simple and quick and it doesn't require any setup so let's quickly jump to coding and build this.

Let's Code

So this first we are going to do is to ask the user to enter the email to be sliced.

email = input("Enter Your Email: ").strip()

Here, as usual, we are making use of the input() function to get the input from the user in the form of string. We will store this input in the email variable.

Also notice that we are making use of a strip() function. strip() function will remove any additional & unwanted spacing on both sides of strings. So that we can make sure that we have only the email in the input and not any unwanted spaces.

Let's move on to the next step now.

username = email[:email.index('@')]
domain = email[email.index('@') + 1:]

Here, we are slicing the user input to obtain the username and domain and ignore the rest.

Let's see how it works.

In case of username variable we only want to keep the part of the string which comes before @ and ignore the rest.

Here, we are making use of the slicing operator: and index() function. index() function searches for the particular element or character within the string and lists it is associated with and return its index number.

Let's consider the input is [email protected], so when we write email[:email.index('@')]i, our index() function will interpret it as email[:13] as our @ is located at index 13. Now email[:13] knows that @ is located at index 13, so now it will keep the part before index 13 and discard the rest.

This exact same process is followed for the domain also.

And now finally, let's print our output.

print(f"Your username is {username} & domain is {domain}")

We are making use of f-string, a new addition to Python 3 which allows us to directly place our variables in the output string. Feel free to make use of format() or old school + or , operators if you don't want to use f-string.

Source Code

You can find the complete source code of this project here:

mindninjaX/Python-Projects-for-Beginners

Support

Thank you so much for reading! I hope you found this beginner project useful.

If you like my work please consider Buying me a Coffee so that I can bring more projects, more articles for you.

Also if you have any questions or doubts feel free to contact me on Twitter, LinkedInGitHub. Or you can also post a comment/discussion & I will try my best to help you :D

Also published at https://dev.to/mindninjax/how-to-build-an-email-slicer-using-python-1m4m