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. Understanding the Singleton Pattern and Using Traits to Achieve Singleton in WordPress Plugin Development
  2. REST API Methods Explained with Best Practices for Building Clean and Secure APIs
  3. My 28-Day Plan to Master Modern WordPress Development Using AI Tools
  4. Scaling WordPress - How Custom Database Tables Solve the Post Meta Bottleneck
  5. WordPress Transients Explained - A Developer's Guide to Site Performance

Your Questions / Comments

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