使用字符和字符计数打印自定义字符串,而不使用python内置方法

时间:2016-06-09 05:09:07

标签: python string

我想调整我的字符串来打印字符和字符数而不使用python内置方法。

>>> string = 'aaaabbbddd'

我正在寻找这个输出:

a4b3d3

2 个答案:

答案 0 :(得分:2)

这是一种没有内置方法的方法!

def count_modify(string):
    d = {}
    for i in string:
        if i in d:
            d[i] += 1
        else:
            d[i] = 1
    return ''.join(str(x)+str(d[x]) for x in d)

或者,您可以决定不使用join()方法,而是执行以下操作

def count_modify(string):
        d = {}
        for i in string:
            if i in d:
                d[i] += 1
            else:
                d[i] = 1
        n_str = ''
        for i in d:
            n_str += str(i)+str(d[i])
        return n_str

现在唯一明显的方法是str()方法!

答案 1 :(得分:1)

这看起来有点长,但我希望这能解决你的问题

string='aaaabbbddd'    
elems=set(string)
result=''
for ele in elems:
    result = result+ele+str(string.count(ele))

希望它有所帮助。快乐编码:)