How to solve Python error: TypeError: can only concatenate str (not "int") to str?
Python is a widely used programming language, but you will inevitably encounter various errors when writing programs. One of the common errors is "TypeError: can only concatenate str (not "int") to str", that is, you can only concatenate strings with strings, but not integers with strings. In this article, we will discuss the causes of this error and introduce some solutions.
This error usually occurs when we try to concatenate an integer with a string. For example, the following code will cause this error:
age = 25 print("My age is " + age)
In this example, we are trying to concatenate the integer variable age
with a string, but Python will throw "TypeError: can only concatenate str (not "int") to str" error. This is because Python doesn't know how to convert an integer to a string for the concatenation operation.
To resolve this error, there are several methods you can try.
Method 1: Convert an integer to a string
The simplest method is to use the str()
function to convert an integer to a string. Here is the modified code example:
age = 25 print("My age is " + str(age))
In this example, we use str(age)
to convert the integer variable age
to a string and then concatenate operate. This way there will be no errors.
Method 2: Use format string
Another solution is to use format string. Python provides a variety of methods for formatting strings, one of which is commonly used to format strings using the percent sign (%). Here is the modified code example:
age = 25 print("My age is %d" % age)
In this example, we use %d
to represent the placeholder for an integer. Then use the percent sign (%) in the string to format the integer variable age
into a string and perform the concatenation operation.
Method 3: Use f-string
Python 3.6 and above introduces a new method of formatting strings, namely f-string. It uses the letter "f" in front of the string and then writes the expression inside curly braces. Here is the modified code example:
age = 25 print(f"My age is {age}")
In this example, we used f-string to format the string and placed the expression of the integer variable age
inside the curly braces Mode.
Summary:
In Python programming, the "TypeError: can only concatenate str (not "int") to str" error occurs because of attempts to concatenate integers and strings. There are several ways to resolve this error, either by converting the integer to a string, using a format string, or using an f-string. Choosing the appropriate method can help us better handle this error during programming and make the code more robust and reliable.
The above is the detailed content of How to solve Python error: TypeError: can only concatenate str (not 'int') to str?. For more information, please follow other related articles on the PHP Chinese website!