Sandhya Prabhakaran <sandhyaprabhaka...@gmail.com> wrote: > I have a string as str='123ACTGAAC'.
You shouldn't use 'str' as a label like that, it prevents you from using the str() function in the same body of code. > How do I blank out the initial numeric part so as to get just the > alphabetic part. The string is always in the same format. >>> sample = '123ACTGAAC' >>> numer = ''.join(s for s in sample if s.isdigit()) >>> alpha = ''.join(s for s in sample if s.isalpha()) >>> numer, alpha ('123', 'ACTGAAC') If by 'always in the same format' you mean the positions of the numbers & alphas, you could slightly abuse the struct module: >>> import struct >>> sample = '123ACTGAAC' >>> format = '3s7s' # a string of 3 + a string of 7 >>> struct.unpack(format, sample) ('123', 'ACTGAAC') But seriously, you should use slicing: >>> sample = '123ACTGAAC' >>> sample[0:3], sample[3:] ('123', 'CTGAAC') You can also label the slices, which can be handy for self-documenting your code: >>> num = slice(3) >>> alp = slice(4,10) >>> sample[num], sample[alp] ('123', 'CTGAAC') -- http://mail.python.org/mailman/listinfo/python-list