String Splitter Brain Teaser
Michael Spencer
mahs at telcopartners.com
Sun Mar 27 20:04:54 EST 2005
James Stroud wrote:
> Hello,
>
> I have strings represented as a combination of an alphabet (AGCT) and a an
> operator "/", that signifies degeneracy. I want to split these strings into
> lists of lists, where the degeneracies are members of the same list and
> non-degenerates are members of single item lists. An example will clarify
> this:
>
> "ATT/GATA/G"
>
> gets split to
>
> [['A'], ['T'], ['T', 'G'], ['A'], ['T'], ['A', 'G']]
>
>>> def group(src):
... stack = []
... srciter = iter(src)
... for i in srciter:
... if i == "/":
... stack[-1].append(srciter.next())
... else:
... stack.append([i])
... return stack
...
>>> group("ATT/GATA/G")
[['A'], ['T'], ['T', 'G'], ['A'], ['T'], ['A', 'G']]
>>>
Michael
More information about the Python-list
mailing list