2016-06-09 15 views

回答

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()方法!

+0

謝謝!最小限度地使用方法。 – purple

+0

是啊..這是完美的。謝謝。 :) – purple

1

這可能看起來像長了一點,但我希望這將解決您的問題

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

希望它能幫助。快樂編碼:)

+0

不錯的一個......但你使用的是count()並且也創建了一個設置數據結構,這不是我正在尋找的。 – purple

+0

噢..我的壞..正如我所說這不是最好的解決方案,但將解決的情況下:) – San