Sarathlal N

Solve "ValueError invalid literal for int() with base 10" - Python

Normally “ValueError: invalid literal for int() with base 10” error occurs when we try to convert an invalid object into an integer.

The cases are,

  1. Passing a string containing anything that is not a number, like letters and special characters.
  2. Passing a string-type object that looks like a float type.

Example

int_var = int("...")

The solution is to ensure that we do not pass any letters or special characters to int() function.

Solution 1

import re
myInput= "123a"
matched=re.search("[^\d]",myInput)
if matched==None:
    myInt=int(myInput)
    print("Output Integer is:")
    print(myInt)
else:
    print("Input Cannot be converted into Integer.")

Solution 2

myInput= "123a"
if myInput.isdigit():
    print("Output Integer is:")
    myInt=int(myInput)
    print(myInt)
else:
    print("Input cannot be converted into integer.")

Looking for a skilled WordPress/WooCommerce developer? I'm currently available for freelance, contract, or full-time remote opportunities! Let's create something amazing together. Send me a quick message, and I'll respond within 24 hours!

Recent Posts

  1. REST API Methods Explained with Best Practices for Building Clean and Secure APIs
  2. My 28-Day Plan to Master Modern WordPress Development Using AI Tools
  3. Scaling WordPress - How Custom Database Tables Solve the Post Meta Bottleneck
  4. WordPress Transients Explained - A Developer's Guide to Site Performance
  5. Behind the Click - The Hidden Journey of Your Web Requests

Your Questions / Comments

If you found this article interesting, found errors, or just want to discuss about it, please get in touch.