Python代码报错TypeError:无法将int/NoneType与str拼接,请求协助
问题解决:字符串拼接类型错误
错误原因分析
TypeError: can only concatenate str (not "int") to str
你代码里的len(name)返回的是整数类型,Python不允许直接把整数和字符串拼接,必须先把整数转换成字符串才能参与拼接。TypeError: can only concatenate str (not "NoneType") to str
正常情况下input()函数会返回用户输入的字符串(哪怕是空输入也是空字符串"",不是None),如果出现这个错误,检查是否有其他代码意外把name变量赋值成了None。
修正后的代码
name = input("whats your name?") # 获取姓名的字符长度 name_length = len(name) # 将整数转成字符串后再拼接生成邮箱 email = name + str(name_length) + "@gmail.com" print(email)
额外说明
原代码里的number_of_letters = len(name+ "gmail.com")这行没有实际作用,而且计算的是姓名加上gmail.com的总长度,如果你只是想获取姓名的长度,直接用len(name)即可。
内容的提问来源于stack exchange,提问作者Bruno Vidal
相关产品推荐
相关产品推荐

