'aabbababacccssdd'
生成したい文字列があります['aa', 'bb', 'a', 'b', 'a', 'b', 'a', 'ccc', 'ss', 'dd']
これが私の現在の解決策です:
def get_pats(n):
n = str(n) # to support integers
a = len(n)
p = []
pat_start = 0
prev = 0
for b in range(0, a):
if n[b] != n[prev]:
p.append(n[pat_start:b])
prev = b
pat_start = b
p.append(n[pat_start:b+1])
return p
解決策は十分に機能しますが、これを行うためのよりエレガントで Pythonic な方法があるかどうか疑問に思っていましたか?