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,
- Passing a string containing anything that is not a number, like letters and special characters.
- 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
- Scaling WordPress - How Custom Database Tables Solve the Post Meta Bottleneck
- WordPress Transients Explained - A Developer's Guide to Site Performance
- Behind the Click - The Hidden Journey of Your Web Requests
- Automating Code Linting with GitHub Actions for WordPress Plugins
- Comprehensive Guide to Linting PHP, JavaScript, and CSS in WordPress Plugins Using Composer
Your Questions / Comments
If you found this article interesting, found errors, or just want to discuss about it, please get in touch.