def count(string1,i):
b=len(string1)
if(string1==0 or i==b or b==0):
return -1
else:
while i<b and b!=0:
a=string1.count(string1[i])
return string1[i] + str(a)+ count(string1,i+1)
sent=str(input("enter the string"))
counting_word=count(sent,0)
类型错误无法将int对象转换为隐式字符串
答案 0 :(得分:1)
解决方法:使用format
代替串联:
return '{}{}{}'.format(string1[i], str(a), count(string1,i+1))
无论如何,我建议始终使用format
。
代码修复
否则,您应该将返回值-1
更改为'-1'
(在您的if
分支中)。
或将return语句更改为(在您的else
分支中):
return string1[i] + str(a) + str(count(string1,i+1))