Python中如何实现字符串与整数相加?报错TypeError求解
问题解决:字符串与整数相加的TypeError错误
你的代码尝试将整数age和字符串name直接相加:
name = 'mahbod' age = 13 print(age + name)
触发的错误是:
TypeError: can only concatenate str (not "int") to str
错误原因
Python里字符串和整数的相乘是特殊语法(用于重复字符串,比如"test" * 2得到"testtest"),但相加要求两边必须是相同类型:字符串相加是拼接内容,整数相加是数值运算,Python不会自动帮你转换类型,所以直接相加会报错。
解决方法
你需要把整数转换成字符串,或者用字符串格式化的方式拼接,以下是几种常用方案:
- 用
str()函数转换整数为字符串后拼接
name = 'mahbod' age = 13 print(str(age) + name) # 输出:13mahbod
- 使用f-string(Python3.6及以上版本推荐)
name = 'mahbod' age = 13 print(f"{age}{name}") # 输出:13mahbod # 如果需要在年龄和名字间加空格,写成f"{age} {name}"即可
- 使用
format()方法
name = 'mahbod' age = 13 print("{}{}".format(age, name)) # 输出:13mahbod
内容的提问来源于stack exchange,提问作者maryam aryaee
相关产品推荐
相关产品推荐

