Best I can come up with:

>>> def split_number(string):
...     output = [string[0]]
...     for character in string[1:]:
...         if character.isdigit() != output[-1].isdigit():
...             output.append('')
...         output[-1] += character
...     return tuple(output)
...
>>> split_number('si_pos_99_rep_1_0.ita')
('si_pos_', '99', '_rep_', '1', '_', '0', '.ita')

Cheers,
Xav

On Fri, Apr 2, 2010 at 8:12 PM, Thomas Heller <thel...@ctypes.org> wrote:

> Maybe I'm just lazy, but what is the fastest way to convert a string
> into a tuple containing character sequences and integer numbers, like this:
>
>
> 'si_pos_99_rep_1_0.ita'  -> ('si_pos_', 99, '_rep_', 1, '_', 0, '.ita')
>
> Thanks for ideas,
> Thomas
>
> --
> http://mail.python.org/mailman/listinfo/python-list
>
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to