字符串连接TypeError:只能将str(而不是“ int”)连接到str“

时间:2018-11-25 08:44:54

标签: python-3.x

我正在学习教程,但出现错误。

我的代码应为:

salaries = {'John':'20','Sally':'30','Sammy':'15'}
print(salaries['John'])

salaries['John'] = salaries['John'] + 30
print(salaries['John'])

我正在找回这样的错误

  

回溯(最近一次通话最后一次):文件“ print.py”,第9行,在          salaries ['John'] = salaries ['John'] + 30 TypeError:只能将str(而不是“ int”)连接到str

您能帮我吗?

3 个答案:

答案 0 :(得分:1)

如果要包括30个,则必须输入类似str(30)的内容。这就是为什么它给您造成错误的原因30是一个整数,其余的是您不能将字符串和整数结合在一起的字符串。希望这会有所帮助

答案 1 :(得分:1)

这应该解决它:

salaries['John'] = str(int(salaries['John']) + 30)

您需要将John的薪水转换为int加30,然后再将其转换回字符串。

这会将salaries['John']从20更改为50

答案 2 :(得分:0)

“ +”运算符用于连接字符串,添加数字等。 在您的情况下,您尝试将两个整数相加,但是在词典“ salaries”中,值是字符串。 您可以将值转换为int,添加数字,然后转换为字符串以存储值。

尝试一下:

salaries['John'] = str(int(salaries['John']) + 30)
print(salaries['John'])