Python - Can only concatenate str (not int) to str
In this tutorial, we are going to learn about how to solve the TypeError: can only concatenate str (not “int”) to str in Python
When we try to concatenate a string and integer, we will get the TypeError: can only concatenate str (not “int”) to str, because in python we only concatenate if both values belong to the same data type.
Here is an example of how the error occurs:
name = 'John' # string
id = 11 # integer
result = name + id
print (result)
Output:
Traceback (most recent call last):
File "main.py", line 15, in <module>
print (name + id)
TypeError: can only concatenate str (not "int") to str
In the example above, we are concatenating the string and integer using +
plus operator but both are different data types.So it throws the error in terminal.
To solve the error, convert the integer value to a string using str()
function then concatenate it using +
operator.
The str()
function takes the integer value as a argument and converts it to the string.
Here is an example:
name = 'John' # string
id = 11 # integer
result = name + str(id)
print (result)
Output:
'John11'
Conclusion
The “can only concatenate str (not int) to str” error occurs, when we try to concatenate the string and integer. To solve the error, convert the integer to a string using the str()
function then add it to the string.