Python: Get Numeric Value from User Input

Updated: June 4, 2023 By: Khue Post a comment

In Python, you can get numeric data from user input by using the input() function in combination with error handling. Below are the main steps:

  1. Prompt the user for input using the input() function.
  2. Because the value returned by the input() function is a string, we have to convert it to a numeric value by using appropriate conversion functions like int() or float().
  3. Handle any conversion errors with a try-except block. Display an error message and asking the user to re-enter a number if the current data is inappropriate.
  4. Use a while loop to repeat the process above until a valid numeric input is provided.

Code example:

while True:
    try:
        value = float(input("Enter a number: "))
        break
    except ValueError:
        print("Invalid input. Please enter a valid number.")

print("The entered number is:", value)

Run the program, enter abc, then enter 123 and you will get the following output:

Enter a number: abc
Invalid input. Please enter a valid number.
Enter a number: 123
The entered number is: 123.0

That’s it. If you have any questions related to Python programming, feel free to leave a comment. Happy coding & have a nice day!