问题描述:
在Python中,如果我们将字符串类型与整型进行拼接操作,就会报错”TypeError: can only concatenate str (not “int”) to str “,具体表现为:
num = 100
print("这是数字:" + num)
以上代码执行后,就会报错:
TypeError: can only concatenate str (not "int") to str
问题原因:
问题的根本原因在于,Python中字符串类型和整型是不同的类型,不能直接进行拼接,需要使用合适的方法或者将其进行类型转换。
解决办法:
- 将整型转换成字符串类型
可以使用Python中的str()
函数,将整型转换成字符串类型,然后就可以进行字符串拼接了,具体代码如下:
num = 100
print("这是数字:" + str(num))
以上代码执行后输出结果为:这是数字:100
- 使用格式化字符串
使用占位符来表示需要插入的数据,并将数据通过%
符号传入,具体代码如下:
num = 100
print("这是数字:%d" % num)
以上代码执行后输出结果为:这是数字:100
- 使用f字符串
在Python3.6及以上版本中,可以直接使用f字符串来进行拼接,具体代码如下:
num = 100
print(f"这是数字:{num}")
以上代码执行后输出结果为:这是数字:100
综上所述,当我们再次遇到”TypeError: can only concatenate str (not “int”) to str “错误时,我们需要注意检查代码中是否有字符串类型与整型的拼接操作,并使用合适的方法进行解决。