Home Â» Python Â» Invalid literal for int with base 10 in Python

# Invalid literal for int with base 10 in Python

The "invalid literal for int() with base 10" error in Python occurs when you try to convert a string value to an integer, but the string is not a valid integer representation. Here is an example of how this error might occur:

>>> int("123.45")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '123.45'

## Resolving: Invalid literal for int with base 10

To resolve this error, you need to make sure that the string you are trying to convert to an integer is a valid integer representation. One way to do this is to use the isdigit() method to check if the string contains only digits:

>>> s = "123.45"
>>> if s.isdigit():
...     int_value = int(s)
... else:
...     print("Invalid integer representation:", s)
...
Invalid integer representation: 123.45

Alternatively, you can use the try and except statements to handle the error gracefully:

>>> s = "123.45"
>>> try:
...     int_value = int(s)
... except ValueError:
...     print("Invalid integer representation:", s)
...
Invalid integer representation: 123.45

If the string contains a decimal point or other non-numeric characters, you can use the float() function to convert it to a floating-point number, or use string manipulation techniques to remove the non-numeric characters before trying to convert it to an integer.

The float() function in Python is used to convert a value to a floating-point number. It can be used to convert integers, strings, and other data types to floating-point numbers.

Here are some examples of how the float() function can be used:

# Convert an integer to a float
x = float(3)
print(x)  # Output: 3.0

# Convert a string to a float
y = float("3.14")
print(y)  # Output: 3.14

# Convert a boolean value to a float
z = float(True)
print(z)  # Output: 1.0

If the value passed to the float() function is not a valid representation of a floating-point number, a ValueError exception will be raised.

# Convert an invalid string to a float
a = float("abc")
# Output: ValueError: could not convert string to float: 'abc'