Python报错”TypeError: can only concatenate str (not “int”) to str “怎么处理?

  • Post category:Python

问题描述:

在Python中,如果我们将字符串类型与整型进行拼接操作,就会报错”TypeError: can only concatenate str (not “int”) to str “,具体表现为:

num = 100
print("这是数字:" + num)

以上代码执行后,就会报错:

TypeError: can only concatenate str (not "int") to str

问题原因:

问题的根本原因在于,Python中字符串类型和整型是不同的类型,不能直接进行拼接,需要使用合适的方法或者将其进行类型转换。

解决办法:

  1. 将整型转换成字符串类型

可以使用Python中的str()函数,将整型转换成字符串类型,然后就可以进行字符串拼接了,具体代码如下:

num = 100
print("这是数字:" + str(num))

以上代码执行后输出结果为:这是数字:100

  1. 使用格式化字符串

使用占位符来表示需要插入的数据,并将数据通过%符号传入,具体代码如下:

num = 100
print("这是数字:%d" % num)

以上代码执行后输出结果为:这是数字:100

  1. 使用f字符串

在Python3.6及以上版本中,可以直接使用f字符串来进行拼接,具体代码如下:

num = 100
print(f"这是数字:{num}")

以上代码执行后输出结果为:这是数字:100

综上所述,当我们再次遇到”TypeError: can only concatenate str (not “int”) to str “错误时,我们需要注意检查代码中是否有字符串类型与整型的拼接操作,并使用合适的方法进行解决。