类型错误无法将int对象隐式转换为字符串

时间:2018-09-21 11:30:12

标签: python python-3.x

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对象转换为隐式字符串

1 个答案:

答案 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))