Another solution, much more verbose but certainly more readable:
#!/usr/bin/env python
str = "ABBBCCDDZ"
parts = []
last_char = ''
current_chunk = ''
for i in range(len(str)):
current_char = str[i]
if (current_chunk == '') or (last_char == current_char):
current_chunk = current_chunk + current_char
else:
parts.append(current_chunk)
current_chunk = current_char
last_char = current_char
if len(current_chunk)>0:
parts.append(current_chunk)
print parts
Also available here:
http://pastebin.com/f1213db97
- Antonio Ognio, Lima-Peru