How to take input as int (integer) in python?

featured Image

In this short article, we will learn how to make the input function accept only integers as input values in python.

The input() function in python is used to take user data as input. It prompts for input when we run the program and reads the line.

It reads the user input from the prompt and returns a string. So, whatever the user enters, whether it be a number, text, or boolean all will be converted into a string in input() function.

We can check the data type of the input data using type() function.

Example:

user_input = input('Enter something :')

print(type(user_input))

Output:

Enter something :123 
<class 'str'>

As you can see, we have entered a number as input, but when we print the type of it, it returns as a string. (<class 'str'>).

So, how can we convert the input value into an integer?

Well, to convert the input into an integer we can use the int() function in python.

The int() is used to convert any string, number, or object into a string and then return it.

So, to convert the user input to an integer, we have to wrap the input() function inside the int() function.

Example:

user_input = int(input('Enter number :'))

print(type(user_input))

Output:

Enter number :123
<class 'int'>

In this example, when we enter the number, it gets converted to an integer by int() function and so we get int as the data type of the input value.

Now, let’s see what we get when we enter a string instead of a number in the input prompt.

Enter number :abc
Traceback (most recent call last):
  File "main.py", line 8, in <module>
    user_input = int(input('Enter number :'))
ValueError: invalid literal for int() with base 10: 'abc'

So, when we enter a string, it throws an error in our terminal. And it’s hard for a regular user to understand the error.

So, to solve the error and to give a proper error message to a user, we have to use the try except statement.

Example:

try:
    name = int(input("Enter number: "))
    print('Thanks')
except ValueError:
    print('Please enter a valid number')

So, now if we enter a string instead of a number, we won’t get a long error in our terminal and we can provide a proper error message to the user.

Enter number: abc
Please enter a valid number

And this is how you can handle the error in the python program.

Conclusion: Here, we have learned about how to make input only accept numbers in python, convert the input data into an integer, and handle errors using the try-except statement.

Related Posts

merge json files in python

How to merge JSON files in python

JSON (JavaScript Object Notation) is a data format used for storing, transferring, and visualizing data. Its simple structure of key:value pairs and array data types makes JSON an easy and…

Read more
Install python pip in ubuntu

How to Install Pip(pip3) in Ubuntu Linux 22.04

Pip is a package manager for Python that allows you to install and manage additional Python packages that are not part of the Python standard library. Pip makes it easy…

Read more
featured Image

How to Write If-Else Statements in One Line in Python

If-else statements are a fundamental concept in Python and other programming languages. They allow you to execute different blocks of code based on whether a condition is true or false….

Read more

Leave a Reply

Your email address will not be published. Required fields are marked *